time="2024-07-24T16:16:37Z" level=warning msg="/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/integration-test/docker-compose.yaml: `version` is obsolete" Container integration-test-gateway-1 Creating Container integration-test-authentication-1 Creating Container integration-test-experiment-1 Creating Container integration-test-federation-1 Creating Container integration-test-device-1 Creating Container integration-test-authorization-1 Creating Container integration-test-federation-1 Created Container integration-test-authorization-1 Created Container integration-test-gateway-1 Created Container integration-test-authentication-1 Created Container integration-test-device-1 Created Container integration-test-experiment-1 Created Attaching to authentication-1, authorization-1, device-1, experiment-1, federation-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/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 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-07-24T16:17:11Z"} authentication-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} experiment-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} experiment-1 | {"level":"info","message":"Experiment Service started successfully"} authentication-1 | {"level":"info","message":"Authentication Service started successfully"} device-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} device-1 | {"level":"info","message":"Device Service started successfully"} authorization-1 | {"client_addr":"127.0.0.1:48868","level":"info","msg":"Received request.","req_id":1,"req_method":"GET","req_path":"/","subsystem":"opa","time":"2024-07-24T16:17:12Z"} authorization-1 | {"client_addr":"127.0.0.1:48868","level":"info","msg":"Sent response.","req_id":1,"req_method":"GET","req_path":"/","resp_bytes":1424,"resp_duration":0.319477,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:12Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"๐Ÿงช experimental features enabled: []","subsystem":"openfga","timestamp":1721837832.4896445} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"using 'memory' storage engine","subsystem":"openfga","timestamp":1721837832.489754} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"warn","message":"authentication is disabled","subsystem":"openfga","timestamp":1721837832.4897726} 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":1721837832.4898148} 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":1721837832.489836} 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":1721837832.4901261,"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":1721837832.4906962} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"HTTP server listening on 'localhost:3013'...","subsystem":"openfga","timestamp":1721837832.491811} 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:58090","raw_request":{"name":"crosslab"},"raw_response":{"created_at":"2024-07-24T16:17:12.511060419Z","id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","name":"crosslab","updated_at":"2024-07-24T16:17:12.511060419Z"},"request_id":"16057fdd-837d-4211-9055-332d00652110","subsystem":"openfga","timestamp":1721837832.5111568} 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:58090","raw_request":{"schema_version":"1.1","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_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":"01J3JRGJB45D7WF9F1DQAMP2EJ"},"request_id":"884e0dd0-2d7f-4ae6-98e0-4120d7821fd1","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837832.5484366} authorization-1 | {"client_addr":"127.0.0.1:48868","level":"info","msg":"Received request.","req_id":2,"req_method":"PUT","req_path":"/v1/data/jwt_secret","subsystem":"opa","time":"2024-07-24T16:17:12Z"} authorization-1 | {"client_addr":"127.0.0.1:48868","level":"info","msg":"Sent response.","req_id":2,"req_method":"PUT","req_path":"/v1/data/jwt_secret","resp_bytes":0,"resp_duration":0.291851,"resp_status":204,"subsystem":"opa","time":"2024-07-24T16:17:12Z"} authorization-1 | {"level":"info","message":"Authorization Service started successfully"} authorization-1 | {"current_version":"0.54.0","download_opa":"https://openpolicyagent.org/downloads/v0.66.0/opa_linux_amd64","latest_version":"0.66.0","level":"info","msg":"OPA is out of date.","release_notes":"https://github.com/open-policy-agent/opa/releases/tag/v0.66.0","subsystem":"opa","time":"2024-07-24T16:17:12Z"} gateway-1 | {"time_local":"24/Jul/2024:16:17:18 +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.029","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"43a92f36918690baa51def6231cd781c"} authentication-1 | {"level":"info","message":"HEAD /auth/status 200 20ms","method":"HEAD","requestID":"43a92f36918690baa51def6231cd781c","responseTime":20,"status":200,"url":"/auth/status"} gateway-1 | {"time_local":"24/Jul/2024:16:17:18 +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.014","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"190049e6b2818873a2d7d20e2a4f4976"} device-1 | {"level":"info","message":"HEAD /device/status 200 9ms","method":"HEAD","requestID":"3293b800-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/device/status"} gateway-1 | {"time_local":"24/Jul/2024:16:17:18 +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":"e57c7343488f48cf5957296e1aec185d"} authorization-1 | {"level":"info","message":"HEAD /authorization/status 200 10ms","method":"HEAD","requestID":"e57c7343488f48cf5957296e1aec185d","responseTime":10,"status":200,"url":"/authorization/status"} gateway-1 | {"time_local":"24/Jul/2024:16:17:18 +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.015","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"92d17f47bfc82f1deaceafc1ba89afb9"} federation-1 | {"level":"info","message":"HEAD /federation/status 200 10ms","method":"HEAD","requestID":"329a95d0-49d8-11ef-b6c5-172ebd1cf6a9","responseTime":10,"status":200,"url":"/federation/status"} gateway-1 | {"time_local":"24/Jul/2024:16:17:18 +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.015","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"9c8e2a47cd9db62501b809e98fc38424"} experiment-1 | {"level":"info","message":"HEAD /experiment/status 200 9ms","method":"HEAD","requestID":"329e1840-49d8-11ef-b2b6-2b9c58fcf893","responseTime":9,"status":200,"url":"/experiment/status"} gateway-1 | {"time_local":"24/Jul/2024:16:17:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /login HTTP/1.1","status": "201","body_bytes_sent":"88","request_time":"0.158","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"92a3fd7065bbeb7e4a2b69bf5560e000"} authentication-1 | {"level":"info","message":"POST /login 201 136ms","method":"POST","requestID":"92a3fd7065bbeb7e4a2b69bf5560e000","responseTime":136,"status":201,"url":"/login"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0MX0.izrL8xDvtD8jPPXKReCuKdeQha7DIfkNur0qUzf2r2s","level":"info","message":"auth send jwt","requestID":"f092399fb234afcd76663b020effdb5e"} authentication-1 | {"level":"info","message":"GET /auth 200 24ms","method":"GET","requestID":"f092399fb234afcd76663b020effdb5e","responseTime":24,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"f092399fb234afcd76663b020effdb5e"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":3,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:21Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":3,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":2.266564,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:21Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"f092399fb234afcd76663b020effdb5e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837841,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0MX0.izrL8xDvtD8jPPXKReCuKdeQha7DIfkNur0qUzf2r2s"} authorization-1 | {"level":"info","message":"POST /authorize 200 34ms","method":"POST","requestID":"f092399fb234afcd76663b020effdb5e","responseTime":34,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F837d34c9-6d1e-4771-9e49-f12308765f0d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"bd0c2b70-bd4a-4e8a-81aa-0d8ecf94ec65","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837841.2850842} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"f092399fb234afcd76663b020effdb5e","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"632b3d47-e884-4c02-a032-a24d3964922a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837841.3008344} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"f092399fb234afcd76663b020effdb5e","responseTime":10,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F837d34c9-6d1e-4771-9e49-f12308765f0d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"ed12f5c1-29f9-4fe9-8247-4a06757d3b25","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837841.3172996} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c6bd8ec4-e135-4843-84be-463d194c8915","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837841.3179946} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"f092399fb234afcd76663b020effdb5e","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F837d34c9-6d1e-4771-9e49-f12308765f0d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F837d34c9-6d1e-4771-9e49-f12308765f0d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:21.317281346Z"}]},"request_id":"a82fb6e0-bb76-4236-a8e8-e0c3a051bcab","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837841.3252559} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f092399fb234afcd76663b020effdb5e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f092399fb234afcd76663b020effdb5e"} gateway-1 | {"time_local":"24/Jul/2024:16:17:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.226","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f092399fb234afcd76663b020effdb5e"} device-1 | {"level":"info","message":"POST /devices? 201 188ms","method":"POST","requestID":"f092399fb234afcd76663b020effdb5e","responseTime":188,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0MX0.izrL8xDvtD8jPPXKReCuKdeQha7DIfkNur0qUzf2r2s","level":"info","message":"auth send jwt","requestID":"c6f40fb2912490fec25603e708a6bc56"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c6f40fb2912490fec25603e708a6bc56","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"c6f40fb2912490fec25603e708a6bc56"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":4,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:21Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":4,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.68877,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:21Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"c6f40fb2912490fec25603e708a6bc56","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837841,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0MX0.izrL8xDvtD8jPPXKReCuKdeQha7DIfkNur0qUzf2r2s"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c6f40fb2912490fec25603e708a6bc56","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57296ac1-bdac-491c-976b-c3ff7787699a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"165540eb-49a1-4d9a-be59-5e586cd98ac6","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837841.3797224} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"c6f40fb2912490fec25603e708a6bc56","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b9ce69cf-be44-4d38-9687-c9e88fc2b5ee","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837841.390741} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"c6f40fb2912490fec25603e708a6bc56","responseTime":8,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57296ac1-bdac-491c-976b-c3ff7787699a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"51f31a19-4c09-43da-9804-284495123ca7","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837841.4087539} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1e016b29-560c-41ba-b22b-3cb861850d82","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837841.4092076} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"c6f40fb2912490fec25603e708a6bc56","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57296ac1-bdac-491c-976b-c3ff7787699a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57296ac1-bdac-491c-976b-c3ff7787699a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:21.408735313Z"}]},"request_id":"63d6b8a8-a7af-47b2-8e82-37a1e4c72204","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837841.421195} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"c6f40fb2912490fec25603e708a6bc56","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"c6f40fb2912490fec25603e708a6bc56"} gateway-1 | {"time_local":"24/Jul/2024:16:17:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.077","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c6f40fb2912490fec25603e708a6bc56"} device-1 | {"level":"info","message":"POST /devices? 201 72ms","method":"POST","requestID":"c6f40fb2912490fec25603e708a6bc56","responseTime":72,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9a24f9e4732c98edbe3edb04b4b1d9fa","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"9a24f9e4732c98edbe3edb04b4b1d9fa","responseTime":3,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"da17f87e5f9f93fd3ed84d522b149338","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"da17f87e5f9f93fd3ed84d522b149338","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Jul/2024:16:17:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/837d34c9-6d1e-4771-9e49-f12308765f0d/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":"9a24f9e4732c98edbe3edb04b4b1d9fa"} device-1 | {"level":"info","message":"OPTIONS /devices/837d34c9-6d1e-4771-9e49-f12308765f0d/websocket 200 3ms","method":"OPTIONS","requestID":"9a24f9e4732c98edbe3edb04b4b1d9fa","responseTime":3,"status":200,"url":"/devices/837d34c9-6d1e-4771-9e49-f12308765f0d/websocket"} gateway-1 | {"time_local":"24/Jul/2024:16:17:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/57296ac1-bdac-491c-976b-c3ff7787699a/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":"da17f87e5f9f93fd3ed84d522b149338"} device-1 | {"level":"info","message":"OPTIONS /devices/57296ac1-bdac-491c-976b-c3ff7787699a/websocket 200 1ms","method":"OPTIONS","requestID":"da17f87e5f9f93fd3ed84d522b149338","responseTime":1,"status":200,"url":"/devices/57296ac1-bdac-491c-976b-c3ff7787699a/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0M30.fE_1TNiAwC7nFwuCHEdikr4-k6bItb5kamt9SzKu_os","level":"info","message":"auth send jwt","requestID":"4e53e1ad8a4e8eae2c9b774922956cce"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"4e53e1ad8a4e8eae2c9b774922956cce","responseTime":8,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0M30.fE_1TNiAwC7nFwuCHEdikr4-k6bItb5kamt9SzKu_os","level":"info","message":"auth send jwt","requestID":"1d56e2b610fb4f9223ad32d29c001637"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"4e53e1ad8a4e8eae2c9b774922956cce"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"1d56e2b610fb4f9223ad32d29c001637","responseTime":8,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"1d56e2b610fb4f9223ad32d29c001637"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":5,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:23Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":5,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.979749,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:23Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/837d34c9-6d1e-4771-9e49-f12308765f0d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4e53e1ad8a4e8eae2c9b774922956cce","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/837d34c9-6d1e-4771-9e49-f12308765f0d","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837843,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0M30.fE_1TNiAwC7nFwuCHEdikr4-k6bItb5kamt9SzKu_os"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"4e53e1ad8a4e8eae2c9b774922956cce","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51350","level":"info","msg":"Received request.","req_id":6,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:23Z"} authorization-1 | {"client_addr":"127.0.0.1:51350","level":"info","msg":"Sent response.","req_id":6,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.337671,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:23Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/57296ac1-bdac-491c-976b-c3ff7787699a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"1d56e2b610fb4f9223ad32d29c001637","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/57296ac1-bdac-491c-976b-c3ff7787699a","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837843,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0M30.fE_1TNiAwC7nFwuCHEdikr4-k6bItb5kamt9SzKu_os"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"1d56e2b610fb4f9223ad32d29c001637","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"1d56e2b610fb4f9223ad32d29c001637"} gateway-1 | {"time_local":"24/Jul/2024:16:17:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/57296ac1-bdac-491c-976b-c3ff7787699a/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.052","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"1d56e2b610fb4f9223ad32d29c001637"} device-1 | {"level":"info","message":"POST /devices/57296ac1-bdac-491c-976b-c3ff7787699a/websocket 200 38ms","method":"POST","requestID":"1d56e2b610fb4f9223ad32d29c001637","responseTime":38,"status":200,"url":"/devices/57296ac1-bdac-491c-976b-c3ff7787699a/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"4e53e1ad8a4e8eae2c9b774922956cce"} gateway-1 | {"time_local":"24/Jul/2024:16:17:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/837d34c9-6d1e-4771-9e49-f12308765f0d/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","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":"4e53e1ad8a4e8eae2c9b774922956cce"} device-1 | {"level":"info","message":"POST /devices/837d34c9-6d1e-4771-9e49-f12308765f0d/websocket 200 45ms","method":"POST","requestID":"4e53e1ad8a4e8eae2c9b774922956cce","responseTime":45,"status":200,"url":"/devices/837d34c9-6d1e-4771-9e49-f12308765f0d/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/57296ac1-bdac-491c-976b-c3ff7787699a' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/837d34c9-6d1e-4771-9e49-f12308765f0d' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0M30.fE_1TNiAwC7nFwuCHEdikr4-k6bItb5kamt9SzKu_os","level":"info","message":"auth send jwt","requestID":"9599233ed44bdeb10e6f45c5da33ac36"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"9599233ed44bdeb10e6f45c5da33ac36","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9599233ed44bdeb10e6f45c5da33ac36"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":7,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:23Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":7,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.389842,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/837d34c9-6d1e-4771-9e49-f12308765f0d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"9599233ed44bdeb10e6f45c5da33ac36","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/837d34c9-6d1e-4771-9e49-f12308765f0d","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837843,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0M30.fE_1TNiAwC7nFwuCHEdikr4-k6bItb5kamt9SzKu_os"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"9599233ed44bdeb10e6f45c5da33ac36","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F837d34c9-6d1e-4771-9e49-f12308765f0d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F837d34c9-6d1e-4771-9e49-f12308765f0d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:21.317281346Z"}]},"request_id":"37d63719-5c86-4f35-bf9c-d900054f5960","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837843.7910404} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"9599233ed44bdeb10e6f45c5da33ac36","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9599233ed44bdeb10e6f45c5da33ac36"} gateway-1 | {"time_local":"24/Jul/2024:16:17:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/837d34c9-6d1e-4771-9e49-f12308765f0d? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9599233ed44bdeb10e6f45c5da33ac36"} device-1 | {"level":"info","message":"GET /devices/837d34c9-6d1e-4771-9e49-f12308765f0d? 200 37ms","method":"GET","requestID":"9599233ed44bdeb10e6f45c5da33ac36","responseTime":37,"status":200,"url":"/devices/837d34c9-6d1e-4771-9e49-f12308765f0d?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0M30.fE_1TNiAwC7nFwuCHEdikr4-k6bItb5kamt9SzKu_os","level":"info","message":"auth send jwt","requestID":"3a44db70382b219eed3a2ab998840d98"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"3a44db70382b219eed3a2ab998840d98","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3a44db70382b219eed3a2ab998840d98"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":8,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:23Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":8,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.089065,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/57296ac1-bdac-491c-976b-c3ff7787699a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3a44db70382b219eed3a2ab998840d98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/57296ac1-bdac-491c-976b-c3ff7787699a","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837843,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0M30.fE_1TNiAwC7nFwuCHEdikr4-k6bItb5kamt9SzKu_os"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"3a44db70382b219eed3a2ab998840d98","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57296ac1-bdac-491c-976b-c3ff7787699a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57296ac1-bdac-491c-976b-c3ff7787699a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:21.408735313Z"}]},"request_id":"36f27921-d61a-4f42-8058-93509dbb482c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837843.8419049} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"3a44db70382b219eed3a2ab998840d98","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3a44db70382b219eed3a2ab998840d98"} gateway-1 | {"time_local":"24/Jul/2024:16:17:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/57296ac1-bdac-491c-976b-c3ff7787699a? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.039","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3a44db70382b219eed3a2ab998840d98"} device-1 | {"level":"info","message":"GET /devices/57296ac1-bdac-491c-976b-c3ff7787699a? 200 30ms","method":"GET","requestID":"3a44db70382b219eed3a2ab998840d98","responseTime":30,"status":200,"url":"/devices/57296ac1-bdac-491c-976b-c3ff7787699a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0M30.fE_1TNiAwC7nFwuCHEdikr4-k6bItb5kamt9SzKu_os","level":"info","message":"auth send jwt","requestID":"71efd87a82a4548e7d195edfe52b0b1d"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"71efd87a82a4548e7d195edfe52b0b1d","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"71efd87a82a4548e7d195edfe52b0b1d"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":9,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:23Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":9,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.060951,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:23Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"71efd87a82a4548e7d195edfe52b0b1d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837843,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0M30.fE_1TNiAwC7nFwuCHEdikr4-k6bItb5kamt9SzKu_os"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"71efd87a82a4548e7d195edfe52b0b1d","responseTime":9,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6da988e8-c534-4f71-8718-4d83752dd13f"},"level":"info","message":"Attempting to run experiment","requestID":"71efd87a82a4548e7d195edfe52b0b1d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6da988e8-c534-4f71-8718-4d83752dd13f"},"level":"info","message":"Attempting to book experiment","requestID":"71efd87a82a4548e7d195edfe52b0b1d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6da988e8-c534-4f71-8718-4d83752dd13f"},"level":"info","message":"Successfully booked experiment","requestID":"71efd87a82a4548e7d195edfe52b0b1d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"361564b0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3615b2d0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":10,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":10,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.657236,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51350","level":"info","msg":"Received request.","req_id":11,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/837d34c9-6d1e-4771-9e49-f12308765f0d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"361564b0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/837d34c9-6d1e-4771-9e49-f12308765f0d","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837843,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0M30.fE_1TNiAwC7nFwuCHEdikr4-k6bItb5kamt9SzKu_os"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"361564b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51350","level":"info","msg":"Sent response.","req_id":11,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.730663,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/57296ac1-bdac-491c-976b-c3ff7787699a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3615b2d0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/57296ac1-bdac-491c-976b-c3ff7787699a","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837843,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0M30.fE_1TNiAwC7nFwuCHEdikr4-k6bItb5kamt9SzKu_os"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3615b2d0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F837d34c9-6d1e-4771-9e49-f12308765f0d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F837d34c9-6d1e-4771-9e49-f12308765f0d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:21.317281346Z"}]},"request_id":"2c20a17b-db13-46be-be3c-56cd666142ec","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837844.104266} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"361564b0-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57296ac1-bdac-491c-976b-c3ff7787699a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57296ac1-bdac-491c-976b-c3ff7787699a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:21.408735313Z"}]},"request_id":"8ad5c1a6-5e89-453c-a614-89dce3a03e94","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837844.1066296} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"3615b2d0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"361564b0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/837d34c9-6d1e-4771-9e49-f12308765f0d? 200 23ms","method":"GET","requestID":"361564b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":23,"status":200,"url":"/devices/837d34c9-6d1e-4771-9e49-f12308765f0d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3615b2d0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/57296ac1-bdac-491c-976b-c3ff7787699a? 200 22ms","method":"GET","requestID":"3615b2d0-49d8-11ef-9fe8-9113c2c8d024","responseTime":22,"status":200,"url":"/devices/57296ac1-bdac-491c-976b-c3ff7787699a?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6da988e8-c534-4f71-8718-4d83752dd13f"},"level":"info","message":"Setting up experiment","requestID":"71efd87a82a4548e7d195edfe52b0b1d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6da988e8-c534-4f71-8718-4d83752dd13f"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"71efd87a82a4548e7d195edfe52b0b1d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6da988e8-c534-4f71-8718-4d83752dd13f"},"level":"info","message":"Successfully locked booking for experiment","requestID":"71efd87a82a4548e7d195edfe52b0b1d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6da988e8-c534-4f71-8718-4d83752dd13f"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"71efd87a82a4548e7d195edfe52b0b1d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6da988e8-c534-4f71-8718-4d83752dd13f"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"71efd87a82a4548e7d195edfe52b0b1d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6da988e8-c534-4f71-8718-4d83752dd13f"},"level":"info","message":"Attempting to update booking for experiment","requestID":"71efd87a82a4548e7d195edfe52b0b1d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6da988e8-c534-4f71-8718-4d83752dd13f"},"level":"info","message":"Successfully updated booking for experiment","requestID":"71efd87a82a4548e7d195edfe52b0b1d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6da988e8-c534-4f71-8718-4d83752dd13f"},"level":"info","message":"Successfully set up experiment","requestID":"71efd87a82a4548e7d195edfe52b0b1d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3624a6f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"36251c20-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":12,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":12,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.021757,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51350","level":"info","msg":"Received request.","req_id":13,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51350","level":"info","msg":"Sent response.","req_id":13,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.142657,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/837d34c9-6d1e-4771-9e49-f12308765f0d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3624a6f0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/837d34c9-6d1e-4771-9e49-f12308765f0d","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837843,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0M30.fE_1TNiAwC7nFwuCHEdikr4-k6bItb5kamt9SzKu_os"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6da988e8-c534-4f71-8718-4d83752dd13f"},"level":"info","message":"Successfully running experiment","requestID":"71efd87a82a4548e7d195edfe52b0b1d"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"3624a6f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":14,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/57296ac1-bdac-491c-976b-c3ff7787699a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"36251c20-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/57296ac1-bdac-491c-976b-c3ff7787699a","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837843,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0M30.fE_1TNiAwC7nFwuCHEdikr4-k6bItb5kamt9SzKu_os"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3626c9d0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"36251c20-49d8-11ef-9fe8-9113c2c8d024","responseTime":14,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":14,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F837d34c9-6d1e-4771-9e49-f12308765f0d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2e4f720a-0381-4411-afb8-9738ffb61c8a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837844.220054} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":14,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.26455,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/837d34c9-6d1e-4771-9e49-f12308765f0d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3626c9d0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/837d34c9-6d1e-4771-9e49-f12308765f0d","object_type":"device","rebac_allow":false,"scope_allow":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":"3626c9d0-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F837d34c9-6d1e-4771-9e49-f12308765f0d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F837d34c9-6d1e-4771-9e49-f12308765f0d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:21.317281346Z"}]},"request_id":"0917830e-3122-4542-a5fd-03b8d06f2f56","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837844.2217336} authorization-1 | {"level":"info","message":"POST /relations/query 200 10ms","method":"POST","requestID":"3624a6f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3626c9d0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/837d34c9-6d1e-4771-9e49-f12308765f0d/signaling 200 25ms","method":"POST","requestID":"3626c9d0-49d8-11ef-9fe8-9113c2c8d024","responseTime":25,"status":200,"url":"/devices/837d34c9-6d1e-4771-9e49-f12308765f0d/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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57296ac1-bdac-491c-976b-c3ff7787699a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57296ac1-bdac-491c-976b-c3ff7787699a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:21.408735313Z"}]},"request_id":"8623f55e-6f58-464c-90f6-13de7d2157ff","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837844.227599} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"36251c20-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6da988e8-c534-4f71-8718-4d83752dd13f#owner@http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6da988e8-c534-4f71-8718-4d83752dd13f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"7ec83172-e694-4d76-8cf5-60236752a4e8","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837844.2318764} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"362b5db0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c77e4a1a-c1cd-40e6-b594-064a2c07bf5e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837844.2367446} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3624a6f0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"level":"info","message":"POST /relations/update 200 26ms","method":"POST","requestID":"71efd87a82a4548e7d195edfe52b0b1d","responseTime":26,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"GET /devices/837d34c9-6d1e-4771-9e49-f12308765f0d? 200 47ms","method":"GET","requestID":"3624a6f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":47,"status":200,"url":"/devices/837d34c9-6d1e-4771-9e49-f12308765f0d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"36251c20-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/57296ac1-bdac-491c-976b-c3ff7787699a? 200 46ms","method":"GET","requestID":"36251c20-49d8-11ef-9fe8-9113c2c8d024","responseTime":46,"status":200,"url":"/devices/57296ac1-bdac-491c-976b-c3ff7787699a?"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":15,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57296ac1-bdac-491c-976b-c3ff7787699a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dcb0a001-077e-4973-83d9-4134fea840f6","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837844.2421918} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":15,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.189647,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/57296ac1-bdac-491c-976b-c3ff7787699a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"362b5db0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/57296ac1-bdac-491c-976b-c3ff7787699a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"362b5db0-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"362b5db0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/57296ac1-bdac-491c-976b-c3ff7787699a/signaling 200 12ms","method":"POST","requestID":"362b5db0-49d8-11ef-9fe8-9113c2c8d024","responseTime":12,"status":200,"url":"/devices/57296ac1-bdac-491c-976b-c3ff7787699a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"362d3270-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":16,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:24Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/6da988e8-c534-4f71-8718-4d83752dd13f","user":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"71efd87a82a4548e7d195edfe52b0b1d"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F837d34c9-6d1e-4771-9e49-f12308765f0d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"43fd28f8-ad16-4d4e-ad14-d7bd9801bb17","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837844.2526267} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":16,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.222356,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/837d34c9-6d1e-4771-9e49-f12308765f0d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"362d3270-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/837d34c9-6d1e-4771-9e49-f12308765f0d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"362d3270-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"24/Jul/2024:16:17:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"807","request_time":"0.392","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"71efd87a82a4548e7d195edfe52b0b1d"} experiment-1 | {"level":"info","message":"POST /experiments? 201 363ms","method":"POST","requestID":"71efd87a82a4548e7d195edfe52b0b1d","responseTime":363,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"362d3270-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/837d34c9-6d1e-4771-9e49-f12308765f0d/signaling 200 11ms","method":"POST","requestID":"362d3270-49d8-11ef-9fe8-9113c2c8d024","responseTime":11,"status":200,"url":"/devices/837d34c9-6d1e-4771-9e49-f12308765f0d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"362f5550-49d8-11ef-9fe8-9113c2c8d024"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0NH0.FlItX4p2hOjpbYURQ4Ik7U4eyKn2mgaCaNV8g_-wxWE","level":"info","message":"auth send jwt","requestID":"e46fafb3b9d6ea84ab73dc8665d48f41"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":17,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:24Z"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e46fafb3b9d6ea84ab73dc8665d48f41","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e46fafb3b9d6ea84ab73dc8665d48f41"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57296ac1-bdac-491c-976b-c3ff7787699a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9c774e52-2b5b-41f9-84a9-2bad6eaa20ae","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837844.267701} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":17,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.225059,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51350","level":"info","msg":"Received request.","req_id":18,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/57296ac1-bdac-491c-976b-c3ff7787699a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"362f5550-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/57296ac1-bdac-491c-976b-c3ff7787699a","object_type":"device","rebac_allow":false,"scope_allow":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":"362f5550-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51350","level":"info","msg":"Sent response.","req_id":18,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.68977,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/837d34c9-6d1e-4771-9e49-f12308765f0d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"e46fafb3b9d6ea84ab73dc8665d48f41","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/837d34c9-6d1e-4771-9e49-f12308765f0d","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837844,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0NH0.FlItX4p2hOjpbYURQ4Ik7U4eyKn2mgaCaNV8g_-wxWE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e46fafb3b9d6ea84ab73dc8665d48f41","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"362f5550-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/57296ac1-bdac-491c-976b-c3ff7787699a/signaling 200 13ms","method":"POST","requestID":"362f5550-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/devices/57296ac1-bdac-491c-976b-c3ff7787699a/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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F837d34c9-6d1e-4771-9e49-f12308765f0d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F837d34c9-6d1e-4771-9e49-f12308765f0d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:21.317281346Z"}]},"request_id":"68cea9ac-e764-4cc0-b252-e6404af7e749","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837844.2761471} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e46fafb3b9d6ea84ab73dc8665d48f41","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6da988e8-c534-4f71-8718-4d83752dd13f"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"71efd87a82a4548e7d195edfe52b0b1d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6da988e8-c534-4f71-8718-4d83752dd13f"},"level":"info","message":"Building connection plan","requestID":"71efd87a82a4548e7d195edfe52b0b1d"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"c30b70e3-fc16-4641-9ce0-2c481cd61b8c"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"51d9e73e-3403-4748-a44a-5cac3d8caf91"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"5ec0d084-bee9-4342-8307-43c3b358c24d"}]},"level":"info","message":"Built pairwise service configurations","requestID":"71efd87a82a4548e7d195edfe52b0b1d"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e46fafb3b9d6ea84ab73dc8665d48f41"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/57296ac1-bdac-491c-976b-c3ff7787699a"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/837d34c9-6d1e-4771-9e49-f12308765f0d"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"71efd87a82a4548e7d195edfe52b0b1d"} gateway-1 | {"time_local":"24/Jul/2024:16:17:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/837d34c9-6d1e-4771-9e49-f12308765f0d? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e46fafb3b9d6ea84ab73dc8665d48f41"} device-1 | {"level":"info","message":"GET /devices/837d34c9-6d1e-4771-9e49-f12308765f0d? 200 15ms","method":"GET","requestID":"e46fafb3b9d6ea84ab73dc8665d48f41","responseTime":15,"status":200,"url":"/devices/837d34c9-6d1e-4771-9e49-f12308765f0d?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0NH0.FlItX4p2hOjpbYURQ4Ik7U4eyKn2mgaCaNV8g_-wxWE","level":"info","message":"auth send jwt","requestID":"3638a25317bbdd08b69a479917a0cf6f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3638a25317bbdd08b69a479917a0cf6f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"3632fed0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3638a25317bbdd08b69a479917a0cf6f"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":19,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":19,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.616143,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51350","level":"info","msg":"Received request.","req_id":20,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3632fed0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837843,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0M30.fE_1TNiAwC7nFwuCHEdikr4-k6bItb5kamt9SzKu_os"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3632fed0-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51350","level":"info","msg":"Sent response.","req_id":20,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.80383,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/57296ac1-bdac-491c-976b-c3ff7787699a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3638a25317bbdd08b69a479917a0cf6f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/57296ac1-bdac-491c-976b-c3ff7787699a","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837844,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0NH0.FlItX4p2hOjpbYURQ4Ik7U4eyKn2mgaCaNV8g_-wxWE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3638a25317bbdd08b69a479917a0cf6f","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57296ac1-bdac-491c-976b-c3ff7787699a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57296ac1-bdac-491c-976b-c3ff7787699a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:21.408735313Z"}]},"request_id":"82660d7d-1b0e-43d6-8bad-3658b1e49ea5","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837844.30207} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"3638a25317bbdd08b69a479917a0cf6f","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3638a25317bbdd08b69a479917a0cf6f"} gateway-1 | {"time_local":"24/Jul/2024:16:17:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/57296ac1-bdac-491c-976b-c3ff7787699a? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3638a25317bbdd08b69a479917a0cf6f"} device-1 | {"level":"info","message":"GET /devices/57296ac1-bdac-491c-976b-c3ff7787699a? 200 20ms","method":"GET","requestID":"3638a25317bbdd08b69a479917a0cf6f","responseTime":20,"status":200,"url":"/devices/57296ac1-bdac-491c-976b-c3ff7787699a?"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","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%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"6dc1ded7-17c4-4686-8670-aba6aa4f6884","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837844.3169339} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"53de6876-01ea-4e9e-8675-ab56264c3f66","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837844.3171372} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"3632fed0-49d8-11ef-9fe8-9113c2c8d024","responseTime":16,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"3632fed0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"3632fed0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/6082ab34-a8cd-400d-b9d5-30882f261f04'","requestID":"3632fed0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/6082ab34-a8cd-400d-b9d5-30882f261f04'","requestID":"3632fed0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"3632fed0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 49ms","method":"POST","requestID":"3632fed0-49d8-11ef-9fe8-9113c2c8d024","responseTime":49,"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":"3632fed0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/6082ab34-a8cd-400d-b9d5-30882f261f04","device":"57296ac1-bdac-491c-976b-c3ff7787699a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/6082ab34-a8cd-400d-b9d5-30882f261f04","device":"837d34c9-6d1e-4771-9e49-f12308765f0d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6da988e8-c534-4f71-8718-4d83752dd13f"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"71efd87a82a4548e7d195edfe52b0b1d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"363f81f0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":21,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F837d34c9-6d1e-4771-9e49-f12308765f0d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fa1f9b35-82e7-4a71-b4c6-b23da8ac401f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837844.3729742} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":21,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.593323,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/837d34c9-6d1e-4771-9e49-f12308765f0d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"363f81f0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/837d34c9-6d1e-4771-9e49-f12308765f0d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"363f81f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"363f81f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/837d34c9-6d1e-4771-9e49-f12308765f0d/signaling 200 11ms","method":"POST","requestID":"363f81f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":11,"status":200,"url":"/devices/837d34c9-6d1e-4771-9e49-f12308765f0d/signaling"} device-1 | {"device":"57296ac1-bdac-491c-976b-c3ff7787699a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"57296ac1-bdac-491c-976b-c3ff7787699a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"837d34c9-6d1e-4771-9e49-f12308765f0d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"837d34c9-6d1e-4771-9e49-f12308765f0d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"36424110-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":22,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57296ac1-bdac-491c-976b-c3ff7787699a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"05751c17-8764-4f2d-a099-5641eaee8b73","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837844.3896852} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":22,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.672463,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/57296ac1-bdac-491c-976b-c3ff7787699a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"36424110-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/57296ac1-bdac-491c-976b-c3ff7787699a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"36424110-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"36424110-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/57296ac1-bdac-491c-976b-c3ff7787699a/signaling 200 10ms","method":"POST","requestID":"36424110-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/devices/57296ac1-bdac-491c-976b-c3ff7787699a/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 8100452588193514958 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:eHdX\r\na=ice-pwd:3+sCeCuDHEFPN54JJ235DACW\r\na=ice-options:trickle\r\na=fingerprint:sha-256 37:D8:4D:26:D1:31:AE:07:87:D6:65:A4:B7:23:27:2B:D3:90:80:94:1A:31:80:1D:1A:42:0A:18:EE:1F:22:83\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"837d34c9-6d1e-4771-9e49-f12308765f0d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 6133254800260792886 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:Ty12\r\na=ice-pwd:W+rV9oB3KSQ0QU3Fx5XBQYLx\r\na=ice-options:trickle\r\na=fingerprint:sha-256 55:1E:31:50:3B:45:73:2D:EF:23:5C:4F:5A:2C:05:FC:08:AF:CC:EC:7B:8A:EA:E9:F2:FE:F6:F3:CA:A8:5D:B7\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"57296ac1-bdac-491c-976b-c3ff7787699a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3206291544 1 udp 2113937151 3d0377a1-546e-42a7-83be-e0d44f75dcce.local 60963 typ host generation 0 ufrag Ty12 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"57296ac1-bdac-491c-976b-c3ff7787699a","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/57296ac1-bdac-491c-976b-c3ff7787699a'"} device-1 | {"content":{"candidate":"candidate:741835083 1 udp 1677729535 141.24.211.56 60963 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag Ty12 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"57296ac1-bdac-491c-976b-c3ff7787699a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1571526043 1 udp 2113937151 2b371147-4c9f-4a35-a035-fcfefad09e4d.local 49891 typ host generation 0 ufrag eHdX network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"837d34c9-6d1e-4771-9e49-f12308765f0d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3649503204 1 udp 1677729535 141.24.211.56 49891 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag eHdX network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"837d34c9-6d1e-4771-9e49-f12308765f0d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"837d34c9-6d1e-4771-9e49-f12308765f0d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"57296ac1-bdac-491c-976b-c3ff7787699a","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/837d34c9-6d1e-4771-9e49-f12308765f0d'"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/6082ab34-a8cd-400d-b9d5-30882f261f04' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6082ab34-a8cd-400d-b9d5-30882f261f04","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"837d34c9-6d1e-4771-9e49-f12308765f0d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"837d34c9-6d1e-4771-9e49-f12308765f0d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"57296ac1-bdac-491c-976b-c3ff7787699a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"57296ac1-bdac-491c-976b-c3ff7787699a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"57296ac1-bdac-491c-976b-c3ff7787699a","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f9527c3078f27dc341ace2b415fd27f2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f9527c3078f27dc341ace2b415fd27f2","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/57296ac1-bdac-491c-976b-c3ff7787699a"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/837d34c9-6d1e-4771-9e49-f12308765f0d"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/6082ab34-a8cd-400d-b9d5-30882f261f04"}}},"level":"info","message":"received a callback","requestID":"f9527c3078f27dc341ace2b415fd27f2"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 11ms","method":"POST","requestID":"f9527c3078f27dc341ace2b415fd27f2","responseTime":11,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:17: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.017","http_referrer":"","http_user_agent":"node-fetch","requestID":"f9527c3078f27dc341ace2b415fd27f2"} device-1 | {"data":{"peerconnection":"6082ab34-a8cd-400d-b9d5-30882f261f04","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"6082ab34-a8cd-400d-b9d5-30882f261f04","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/6082ab34-a8cd-400d-b9d5-30882f261f04' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6082ab34-a8cd-400d-b9d5-30882f261f04","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"99f99acae295db3026cb6da20a269544","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"99f99acae295db3026cb6da20a269544","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/57296ac1-bdac-491c-976b-c3ff7787699a"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/837d34c9-6d1e-4771-9e49-f12308765f0d"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/6082ab34-a8cd-400d-b9d5-30882f261f04"}}},"level":"info","message":"received a callback","requestID":"99f99acae295db3026cb6da20a269544"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"36537f20-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":23,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6082ab34-a8cd-400d-b9d5-30882f261f04","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"94bf89d2-da52-4d43-971f-fd06c47fc1f8","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837844.503715} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":23,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.247809,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/6082ab34-a8cd-400d-b9d5-30882f261f04","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"36537f20-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/6082ab34-a8cd-400d-b9d5-30882f261f04","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":"36537f20-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"36537f20-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /peerconnections/6082ab34-a8cd-400d-b9d5-30882f261f04 200 10ms","method":"GET","requestID":"36537f20-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/peerconnections/6082ab34-a8cd-400d-b9d5-30882f261f04"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 33ms","method":"POST","requestID":"99f99acae295db3026cb6da20a269544","responseTime":33,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:17: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.037","http_referrer":"","http_user_agent":"node-fetch","requestID":"99f99acae295db3026cb6da20a269544"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3657ebf0-49d8-11ef-9fe8-9113c2c8d024"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0NH0.FlItX4p2hOjpbYURQ4Ik7U4eyKn2mgaCaNV8g_-wxWE","level":"info","message":"auth send jwt","requestID":"616d4f9b9e3dfa03a3dd6112e82360ef"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"616d4f9b9e3dfa03a3dd6112e82360ef","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":24,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:24Z"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/6da988e8-c534-4f71-8718-4d83752dd13f","requestID":"616d4f9b9e3dfa03a3dd6112e82360ef"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57296ac1-bdac-491c-976b-c3ff7787699a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1e8d8c3a-8b97-4dd9-879e-d3082fc4b09e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837844.532298} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":24,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.310902,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/57296ac1-bdac-491c-976b-c3ff7787699a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3657ebf0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/57296ac1-bdac-491c-976b-c3ff7787699a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3657ebf0-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":25,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":25,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.690079,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:24Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3657ebf0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/6da988e8-c534-4f71-8718-4d83752dd13f","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"616d4f9b9e3dfa03a3dd6112e82360ef","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/6da988e8-c534-4f71-8718-4d83752dd13f","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837844,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0NH0.FlItX4p2hOjpbYURQ4Ik7U4eyKn2mgaCaNV8g_-wxWE"} device-1 | {"level":"info","message":"POST /devices/57296ac1-bdac-491c-976b-c3ff7787699a/signaling 200 11ms","method":"POST","requestID":"3657ebf0-49d8-11ef-9fe8-9113c2c8d024","responseTime":11,"status":200,"url":"/devices/57296ac1-bdac-491c-976b-c3ff7787699a/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"616d4f9b9e3dfa03a3dd6112e82360ef","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3659e7c0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":26,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:24Z"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/6da988e8-c534-4f71-8718-4d83752dd13f","requestID":"616d4f9b9e3dfa03a3dd6112e82360ef"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F837d34c9-6d1e-4771-9e49-f12308765f0d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e6930dd5-36c5-48bf-abe8-cf9646123667","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837844.5458078} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":26,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.430213,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/837d34c9-6d1e-4771-9e49-f12308765f0d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3659e7c0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/837d34c9-6d1e-4771-9e49-f12308765f0d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3659e7c0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"24/Jul/2024:16:17:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/6da988e8-c534-4f71-8718-4d83752dd13f HTTP/1.1","status": "200","body_bytes_sent":"880","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"616d4f9b9e3dfa03a3dd6112e82360ef"} experiment-1 | {"level":"info","message":"GET /experiments/6da988e8-c534-4f71-8718-4d83752dd13f 200 19ms","method":"GET","requestID":"616d4f9b9e3dfa03a3dd6112e82360ef","responseTime":19,"status":200,"url":"/experiments/6da988e8-c534-4f71-8718-4d83752dd13f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3659e7c0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/837d34c9-6d1e-4771-9e49-f12308765f0d/signaling 200 10ms","method":"POST","requestID":"3659e7c0-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/devices/837d34c9-6d1e-4771-9e49-f12308765f0d/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0NH0.FlItX4p2hOjpbYURQ4Ik7U4eyKn2mgaCaNV8g_-wxWE","level":"info","message":"auth send jwt","requestID":"75bc6313507b8fe4bb9d2b41f68b3886"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"75bc6313507b8fe4bb9d2b41f68b3886","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/6da988e8-c534-4f71-8718-4d83752dd13f","requestID":"75bc6313507b8fe4bb9d2b41f68b3886"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":27,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":27,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.189483,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/6da988e8-c534-4f71-8718-4d83752dd13f","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"75bc6313507b8fe4bb9d2b41f68b3886","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/6da988e8-c534-4f71-8718-4d83752dd13f","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837844,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0NH0.FlItX4p2hOjpbYURQ4Ik7U4eyKn2mgaCaNV8g_-wxWE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"75bc6313507b8fe4bb9d2b41f68b3886","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6da988e8-c534-4f71-8718-4d83752dd13f"},"level":"info","message":"Attempting to finish experiment","requestID":"75bc6313507b8fe4bb9d2b41f68b3886"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"365e7ba0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":28,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":28,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.678002,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/6082ab34-a8cd-400d-b9d5-30882f261f04","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"365e7ba0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:http://localhost/peerconnections/6082ab34-a8cd-400d-b9d5-30882f261f04","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837844,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0NH0.FlItX4p2hOjpbYURQ4Ik7U4eyKn2mgaCaNV8g_-wxWE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"365e7ba0-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/6082ab34-a8cd-400d-b9d5-30882f261f04","device":"57296ac1-bdac-491c-976b-c3ff7787699a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/6082ab34-a8cd-400d-b9d5-30882f261f04","device":"837d34c9-6d1e-4771-9e49-f12308765f0d","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/6082ab34-a8cd-400d-b9d5-30882f261f04' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/6082ab34-a8cd-400d-b9d5-30882f261f04' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6082ab34-a8cd-400d-b9d5-30882f261f04","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"20a7878bf3156e5ecbcb9978e7b0731e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"20a7878bf3156e5ecbcb9978e7b0731e","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/57296ac1-bdac-491c-976b-c3ff7787699a"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/837d34c9-6d1e-4771-9e49-f12308765f0d"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/6082ab34-a8cd-400d-b9d5-30882f261f04"}}},"level":"info","message":"received a callback","requestID":"20a7878bf3156e5ecbcb9978e7b0731e"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cc28d7dbb38a4ac693058573dc480566","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"cc28d7dbb38a4ac693058573dc480566","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/57296ac1-bdac-491c-976b-c3ff7787699a"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/837d34c9-6d1e-4771-9e49-f12308765f0d"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/6082ab34-a8cd-400d-b9d5-30882f261f04"}}},"level":"info","message":"received a callback","requestID":"cc28d7dbb38a4ac693058573dc480566"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6082ab34-a8cd-400d-b9d5-30882f261f04': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6082ab34-a8cd-400d-b9d5-30882f261f04","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"58ed57cd-c570-40bd-ac1c-04aa8e2f109c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837844.5977147} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f2959557-e4ec-4c68-a454-3491fafc20ad","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837844.597997} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"365e7ba0-49d8-11ef-9fe8-9113c2c8d024","responseTime":16,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"6082ab34-a8cd-400d-b9d5-30882f261f04","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"365e7ba0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"DELETE /peerconnections/6082ab34-a8cd-400d-b9d5-30882f261f04 204 40ms","method":"DELETE","requestID":"365e7ba0-49d8-11ef-9fe8-9113c2c8d024","responseTime":40,"status":204,"url":"/peerconnections/6082ab34-a8cd-400d-b9d5-30882f261f04"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6da988e8-c534-4f71-8718-4d83752dd13f"},"level":"info","message":"Successfully finished experiment","requestID":"75bc6313507b8fe4bb9d2b41f68b3886"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"36672e30-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":29,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57296ac1-bdac-491c-976b-c3ff7787699a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fc82662e-10e1-4ab3-85bd-40163b97f425","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837844.6341038} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":29,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.2671,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/57296ac1-bdac-491c-976b-c3ff7787699a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"36672e30-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/57296ac1-bdac-491c-976b-c3ff7787699a","object_type":"device","rebac_allow":false,"scope_allow":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":"36672e30-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"36672e30-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/57296ac1-bdac-491c-976b-c3ff7787699a/signaling 200 12ms","method":"POST","requestID":"36672e30-49d8-11ef-9fe8-9113c2c8d024","responseTime":12,"status":200,"url":"/devices/57296ac1-bdac-491c-976b-c3ff7787699a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"36695110-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6da988e8-c534-4f71-8718-4d83752dd13f': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6da988e8-c534-4f71-8718-4d83752dd13f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"3f890a7b-18c3-4caa-a5bc-851a98409f5b","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837844.6433654} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6cc19412-7177-461c-a497-1918c3fdbe1f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837844.6436388} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"75bc6313507b8fe4bb9d2b41f68b3886","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F837d34c9-6d1e-4771-9e49-f12308765f0d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b7353b75-e6aa-4985-9f5c-11122fc327ef","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837844.646447} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":30,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":30,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.267417,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/837d34c9-6d1e-4771-9e49-f12308765f0d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"36695110-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/837d34c9-6d1e-4771-9e49-f12308765f0d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"36695110-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"36695110-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/837d34c9-6d1e-4771-9e49-f12308765f0d/signaling 200 10ms","method":"POST","requestID":"36695110-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/devices/837d34c9-6d1e-4771-9e49-f12308765f0d/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/6da988e8-c534-4f71-8718-4d83752dd13f","requestID":"75bc6313507b8fe4bb9d2b41f68b3886"} gateway-1 | {"time_local":"24/Jul/2024:16:17:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/6da988e8-c534-4f71-8718-4d83752dd13f HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.152","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"75bc6313507b8fe4bb9d2b41f68b3886"} experiment-1 | {"level":"info","message":"DELETE /experiments/6da988e8-c534-4f71-8718-4d83752dd13f 204 148ms","method":"DELETE","requestID":"75bc6313507b8fe4bb9d2b41f68b3886","responseTime":148,"status":204,"url":"/experiments/6da988e8-c534-4f71-8718-4d83752dd13f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 119ms","method":"POST","requestID":"20a7878bf3156e5ecbcb9978e7b0731e","responseTime":119,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0NH0.FlItX4p2hOjpbYURQ4Ik7U4eyKn2mgaCaNV8g_-wxWE","level":"info","message":"auth send jwt","requestID":"d8241d82610fb9f9d8b848f6022f0c86"} gateway-1 | {"time_local":"24/Jul/2024:16:17: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":"20a7878bf3156e5ecbcb9978e7b0731e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 117ms","method":"POST","requestID":"cc28d7dbb38a4ac693058573dc480566","responseTime":117,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d8241d82610fb9f9d8b848f6022f0c86","responseTime":4,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Jul/2024:16:17: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":"cc28d7dbb38a4ac693058573dc480566"} gateway-1 | {"time_local":"24/Jul/2024:16:17:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2646","request_time":"0.980","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"0cbb589df1b8185a36c15e60bbcb4d88"} device-1 | {"level":"info","message":"postDevices called","requestID":"d8241d82610fb9f9d8b848f6022f0c86"} gateway-1 | {"time_local":"24/Jul/2024:16:17:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2647","request_time":"0.984","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"7a3a3225779cdcf029b797650d861255"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":31,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":31,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.857623,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"d8241d82610fb9f9d8b848f6022f0c86","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837844,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0NH0.FlItX4p2hOjpbYURQ4Ik7U4eyKn2mgaCaNV8g_-wxWE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d8241d82610fb9f9d8b848f6022f0c86","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/57296ac1-bdac-491c-976b-c3ff7787699a' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/837d34c9-6d1e-4771-9e49-f12308765f0d' 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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5354607c-25c6-4726-a075-77f3889bc4ad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e3e18c92-1603-4b0e-a4eb-6128aca7383e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837844.7440395} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d8241d82610fb9f9d8b848f6022f0c86","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0a76bb10-8cfc-4642-a364-b2a9dc0283f1","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837844.7497761} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"d8241d82610fb9f9d8b848f6022f0c86","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5354607c-25c6-4726-a075-77f3889bc4ad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"96364983-721d-44d3-8bd5-3368c5c285bf","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837844.7608283} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"39dca902-7036-426d-a5f8-374c43d400b3","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837844.7609696} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"d8241d82610fb9f9d8b848f6022f0c86","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5354607c-25c6-4726-a075-77f3889bc4ad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5354607c-25c6-4726-a075-77f3889bc4ad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:24.760814022Z"}]},"request_id":"65f62244-f702-4a8a-a14e-8dd85af8945c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837844.7658355} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d8241d82610fb9f9d8b848f6022f0c86","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d8241d82610fb9f9d8b848f6022f0c86"} gateway-1 | {"time_local":"24/Jul/2024:16:17:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.062","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d8241d82610fb9f9d8b848f6022f0c86"} device-1 | {"level":"info","message":"POST /devices? 201 52ms","method":"POST","requestID":"d8241d82610fb9f9d8b848f6022f0c86","responseTime":52,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0NH0.FlItX4p2hOjpbYURQ4Ik7U4eyKn2mgaCaNV8g_-wxWE","level":"info","message":"auth send jwt","requestID":"447438bc8613e51bde49aafe045bbe79"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"447438bc8613e51bde49aafe045bbe79","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"447438bc8613e51bde49aafe045bbe79"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":32,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":32,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.738835,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"447438bc8613e51bde49aafe045bbe79","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837844,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0NH0.FlItX4p2hOjpbYURQ4Ik7U4eyKn2mgaCaNV8g_-wxWE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"447438bc8613e51bde49aafe045bbe79","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b4bbfe5-5935-4723-80e8-8e6aae7d037d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"23355b19-7d52-41c6-b078-974b252cec48","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837844.7962663} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"447438bc8613e51bde49aafe045bbe79","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ad410449-5cd4-419e-8358-a73b138da89c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837844.8015444} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"447438bc8613e51bde49aafe045bbe79","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b4bbfe5-5935-4723-80e8-8e6aae7d037d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"a6520b1c-48a6-49b0-8bed-46e21890f6de","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837844.8110237} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"12a1bd12-e4a2-43bf-b3a9-5e130f8886bf","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837844.8111598} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"447438bc8613e51bde49aafe045bbe79","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b4bbfe5-5935-4723-80e8-8e6aae7d037d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b4bbfe5-5935-4723-80e8-8e6aae7d037d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:24.811009949Z"}]},"request_id":"5a5a6e58-d49e-45cb-a682-0d94e8fe731e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837844.8162987} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"447438bc8613e51bde49aafe045bbe79","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"447438bc8613e51bde49aafe045bbe79"} gateway-1 | {"time_local":"24/Jul/2024:16:17:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"447438bc8613e51bde49aafe045bbe79"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"447438bc8613e51bde49aafe045bbe79","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0NX0.zQYpgaTCNF1S2jt2Lt40NxAEPOLbMB2oEwGgYn9uj-w","level":"info","message":"auth send jwt","requestID":"470f1277ad413b162d802ad346db3085"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"470f1277ad413b162d802ad346db3085","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"470f1277ad413b162d802ad346db3085"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":33,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:25Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":33,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.684199,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:25Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"470f1277ad413b162d802ad346db3085","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837845,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0NX0.zQYpgaTCNF1S2jt2Lt40NxAEPOLbMB2oEwGgYn9uj-w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"470f1277ad413b162d802ad346db3085","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b4bbfe5-5935-4723-80e8-8e6aae7d037d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b4bbfe5-5935-4723-80e8-8e6aae7d037d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:24.811009949Z"}]},"request_id":"06702eb3-77cb-48af-b2be-89f4d12c69d5","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837845.4117007} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"470f1277ad413b162d802ad346db3085","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"42a7cfce-f193-4d0f-b752-7e3110c77089","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837845.4183433} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"470f1277ad413b162d802ad346db3085","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b4bbfe5-5935-4723-80e8-8e6aae7d037d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b4bbfe5-5935-4723-80e8-8e6aae7d037d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:24.811009949Z"}]},"request_id":"3c04f8e4-ca14-49f2-96a7-47f8cf1b750f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837845.4382453} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"470f1277ad413b162d802ad346db3085","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"470f1277ad413b162d802ad346db3085"} gateway-1 | {"time_local":"24/Jul/2024:16:17:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.073","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"470f1277ad413b162d802ad346db3085"} device-1 | {"level":"info","message":"PATCH /devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d 200 65ms","method":"PATCH","requestID":"470f1277ad413b162d802ad346db3085","responseTime":65,"status":200,"url":"/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0NX0.zQYpgaTCNF1S2jt2Lt40NxAEPOLbMB2oEwGgYn9uj-w","level":"info","message":"auth send jwt","requestID":"b3e39b7b9a83ec168d9ad08c2342729a"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"b3e39b7b9a83ec168d9ad08c2342729a","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"b3e39b7b9a83ec168d9ad08c2342729a"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":34,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:25Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":34,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.214835,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:25Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"b3e39b7b9a83ec168d9ad08c2342729a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837845,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0NX0.zQYpgaTCNF1S2jt2Lt40NxAEPOLbMB2oEwGgYn9uj-w"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b3e39b7b9a83ec168d9ad08c2342729a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"b3e39b7b9a83ec168d9ad08c2342729a"} gateway-1 | {"time_local":"24/Jul/2024:16:17:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"b3e39b7b9a83ec168d9ad08c2342729a"} device-1 | {"level":"info","message":"POST /devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d/websocket 200 21ms","method":"POST","requestID":"b3e39b7b9a83ec168d9ad08c2342729a","responseTime":21,"status":200,"url":"/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"56b7886508c9f694b4b765b053639361","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"56b7886508c9f694b4b765b053639361","responseTime":3,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Jul/2024:16:17:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/5354607c-25c6-4726-a075-77f3889bc4ad/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":"56b7886508c9f694b4b765b053639361"} device-1 | {"level":"info","message":"OPTIONS /devices/5354607c-25c6-4726-a075-77f3889bc4ad/websocket 200 1ms","method":"OPTIONS","requestID":"56b7886508c9f694b4b765b053639361","responseTime":1,"status":200,"url":"/devices/5354607c-25c6-4726-a075-77f3889bc4ad/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0Nn0.bs36Erblb2xcYMcxvX67gfP-HtcV0pxTAKWBxFxfitM","level":"info","message":"auth send jwt","requestID":"9789ac1dcd75c04643613d814e6ea16c"} authentication-1 | {"level":"info","message":"GET /auth 200 14ms","method":"GET","requestID":"9789ac1dcd75c04643613d814e6ea16c","responseTime":14,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"9789ac1dcd75c04643613d814e6ea16c"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":35,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:26Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":35,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.153773,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:26Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/5354607c-25c6-4726-a075-77f3889bc4ad","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"9789ac1dcd75c04643613d814e6ea16c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/5354607c-25c6-4726-a075-77f3889bc4ad","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837846,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0Nn0.bs36Erblb2xcYMcxvX67gfP-HtcV0pxTAKWBxFxfitM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9789ac1dcd75c04643613d814e6ea16c","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"9789ac1dcd75c04643613d814e6ea16c"} device-1 | {"level":"info","message":"POST /devices/5354607c-25c6-4726-a075-77f3889bc4ad/websocket 200 24ms","method":"POST","requestID":"9789ac1dcd75c04643613d814e6ea16c","responseTime":24,"status":200,"url":"/devices/5354607c-25c6-4726-a075-77f3889bc4ad/websocket"} gateway-1 | {"time_local":"24/Jul/2024:16:17:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/5354607c-25c6-4726-a075-77f3889bc4ad/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.041","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"9789ac1dcd75c04643613d814e6ea16c"} device-1 | {"level":"info","message":"device 'http://localhost/devices/5354607c-25c6-4726-a075-77f3889bc4ad' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0Nn0.bs36Erblb2xcYMcxvX67gfP-HtcV0pxTAKWBxFxfitM","level":"info","message":"auth send jwt","requestID":"eb79416151e4237d0b442b473ddf2560"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"eb79416151e4237d0b442b473ddf2560","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"eb79416151e4237d0b442b473ddf2560"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":36,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:26Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":36,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.28128,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5354607c-25c6-4726-a075-77f3889bc4ad","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"eb79416151e4237d0b442b473ddf2560","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/5354607c-25c6-4726-a075-77f3889bc4ad","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837846,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0Nn0.bs36Erblb2xcYMcxvX67gfP-HtcV0pxTAKWBxFxfitM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"eb79416151e4237d0b442b473ddf2560","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5354607c-25c6-4726-a075-77f3889bc4ad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5354607c-25c6-4726-a075-77f3889bc4ad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:24.760814022Z"}]},"request_id":"97450bb5-09b2-48a6-8df5-70838ec90590","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837846.8611915} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"eb79416151e4237d0b442b473ddf2560","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"eb79416151e4237d0b442b473ddf2560"} gateway-1 | {"time_local":"24/Jul/2024:16:17:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5354607c-25c6-4726-a075-77f3889bc4ad? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"eb79416151e4237d0b442b473ddf2560"} device-1 | {"level":"info","message":"GET /devices/5354607c-25c6-4726-a075-77f3889bc4ad? 200 19ms","method":"GET","requestID":"eb79416151e4237d0b442b473ddf2560","responseTime":19,"status":200,"url":"/devices/5354607c-25c6-4726-a075-77f3889bc4ad?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0Nn0.bs36Erblb2xcYMcxvX67gfP-HtcV0pxTAKWBxFxfitM","level":"info","message":"auth send jwt","requestID":"803830fdfeed52b37cc944e0288b3dd5"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"803830fdfeed52b37cc944e0288b3dd5","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"803830fdfeed52b37cc944e0288b3dd5"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":37,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:26Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":37,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.168001,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"803830fdfeed52b37cc944e0288b3dd5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837846,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0Nn0.bs36Erblb2xcYMcxvX67gfP-HtcV0pxTAKWBxFxfitM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"803830fdfeed52b37cc944e0288b3dd5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b4bbfe5-5935-4723-80e8-8e6aae7d037d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b4bbfe5-5935-4723-80e8-8e6aae7d037d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:24.811009949Z"}]},"request_id":"35449c3a-89a4-493b-ad61-5c9fa81c506d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837846.8909774} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"803830fdfeed52b37cc944e0288b3dd5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"803830fdfeed52b37cc944e0288b3dd5"} gateway-1 | {"time_local":"24/Jul/2024:16:17:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"803830fdfeed52b37cc944e0288b3dd5"} device-1 | {"level":"info","message":"GET /devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d? 200 20ms","method":"GET","requestID":"803830fdfeed52b37cc944e0288b3dd5","responseTime":20,"status":200,"url":"/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0Nn0.bs36Erblb2xcYMcxvX67gfP-HtcV0pxTAKWBxFxfitM","level":"info","message":"auth send jwt","requestID":"88c123c2be8364cabc9f45813d1b2a59"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"88c123c2be8364cabc9f45813d1b2a59","responseTime":7,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"88c123c2be8364cabc9f45813d1b2a59"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":38,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:26Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":38,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.243727,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"88c123c2be8364cabc9f45813d1b2a59","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837846,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0Nn0.bs36Erblb2xcYMcxvX67gfP-HtcV0pxTAKWBxFxfitM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"88c123c2be8364cabc9f45813d1b2a59","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0518bf4c-05b6-41b2-b254-8652983f1c0f"},"level":"info","message":"Attempting to run experiment","requestID":"88c123c2be8364cabc9f45813d1b2a59"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0518bf4c-05b6-41b2-b254-8652983f1c0f"},"level":"info","message":"Attempting to book experiment","requestID":"88c123c2be8364cabc9f45813d1b2a59"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0518bf4c-05b6-41b2-b254-8652983f1c0f"},"level":"info","message":"Successfully booked experiment","requestID":"88c123c2be8364cabc9f45813d1b2a59"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"37cba030-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"37cbee50-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":39,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:26Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":39,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.156924,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:26Z"} authorization-1 | {"client_addr":"127.0.0.1:51350","level":"info","msg":"Received request.","req_id":40,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5354607c-25c6-4726-a075-77f3889bc4ad","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"37cba030-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/5354607c-25c6-4726-a075-77f3889bc4ad","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837846,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0Nn0.bs36Erblb2xcYMcxvX67gfP-HtcV0pxTAKWBxFxfitM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"37cba030-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51350","level":"info","msg":"Sent response.","req_id":40,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.582498,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"37cbee50-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837846,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0Nn0.bs36Erblb2xcYMcxvX67gfP-HtcV0pxTAKWBxFxfitM"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"37cbee50-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5354607c-25c6-4726-a075-77f3889bc4ad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5354607c-25c6-4726-a075-77f3889bc4ad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:24.760814022Z"}]},"request_id":"a291959c-0c44-465c-8688-9c1558fdae66","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837846.9794173} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"37cba030-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b4bbfe5-5935-4723-80e8-8e6aae7d037d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b4bbfe5-5935-4723-80e8-8e6aae7d037d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:24.811009949Z"}]},"request_id":"aea40352-85da-49f6-bb99-f6401cb1c746","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837846.9816096} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"37cbee50-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"37cba030-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/5354607c-25c6-4726-a075-77f3889bc4ad? 200 29ms","method":"GET","requestID":"37cba030-49d8-11ef-9fe8-9113c2c8d024","responseTime":29,"status":200,"url":"/devices/5354607c-25c6-4726-a075-77f3889bc4ad?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"37cbee50-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d? 200 29ms","method":"GET","requestID":"37cbee50-49d8-11ef-9fe8-9113c2c8d024","responseTime":29,"status":200,"url":"/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0518bf4c-05b6-41b2-b254-8652983f1c0f"},"level":"info","message":"Setting up experiment","requestID":"88c123c2be8364cabc9f45813d1b2a59"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0518bf4c-05b6-41b2-b254-8652983f1c0f"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"88c123c2be8364cabc9f45813d1b2a59"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0518bf4c-05b6-41b2-b254-8652983f1c0f"},"level":"info","message":"Successfully locked booking for experiment","requestID":"88c123c2be8364cabc9f45813d1b2a59"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0518bf4c-05b6-41b2-b254-8652983f1c0f"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"88c123c2be8364cabc9f45813d1b2a59"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0518bf4c-05b6-41b2-b254-8652983f1c0f"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"88c123c2be8364cabc9f45813d1b2a59"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0518bf4c-05b6-41b2-b254-8652983f1c0f"},"level":"info","message":"Attempting to update booking for experiment","requestID":"88c123c2be8364cabc9f45813d1b2a59"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0518bf4c-05b6-41b2-b254-8652983f1c0f"},"level":"info","message":"Successfully updated booking for experiment","requestID":"88c123c2be8364cabc9f45813d1b2a59"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0518bf4c-05b6-41b2-b254-8652983f1c0f"},"level":"info","message":"Successfully set up experiment","requestID":"88c123c2be8364cabc9f45813d1b2a59"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"37d982e0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"37d9f810-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"37da6d40-49d8-11ef-9fe8-9113c2c8d024"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0518bf4c-05b6-41b2-b254-8652983f1c0f"},"level":"info","message":"Successfully running experiment","requestID":"88c123c2be8364cabc9f45813d1b2a59"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":41,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:27Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":41,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.796441,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51350","level":"info","msg":"Received request.","req_id":42,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5354607c-25c6-4726-a075-77f3889bc4ad","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"37d982e0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/5354607c-25c6-4726-a075-77f3889bc4ad","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837846,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0Nn0.bs36Erblb2xcYMcxvX67gfP-HtcV0pxTAKWBxFxfitM"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"37d982e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51350","level":"info","msg":"Sent response.","req_id":42,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.945233,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"37d9f810-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837846,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0Nn0.bs36Erblb2xcYMcxvX67gfP-HtcV0pxTAKWBxFxfitM"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"37d9f810-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5354607c-25c6-4726-a075-77f3889bc4ad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5354607c-25c6-4726-a075-77f3889bc4ad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:24.760814022Z"}]},"request_id":"10870665-c828-4ed3-ab9c-83d30893730a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837847.0749652} authorization-1 | {"client_addr":"127.0.0.1:51362","level":"info","msg":"Received request.","req_id":43,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:27Z"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"37d982e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51362","level":"info","msg":"Sent response.","req_id":43,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.286539,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17: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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b4bbfe5-5935-4723-80e8-8e6aae7d037d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b4bbfe5-5935-4723-80e8-8e6aae7d037d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:24.811009949Z"}]},"request_id":"d561e3b1-065a-4817-b6e2-7742eb0062b1","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837847.0786366} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5354607c-25c6-4726-a075-77f3889bc4ad","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"051599bb-df8c-4952-a80b-ba733cf2ce21","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837847.0789464} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"37d9f810-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5354607c-25c6-4726-a075-77f3889bc4ad","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"37da6d40-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5354607c-25c6-4726-a075-77f3889bc4ad","object_type":"device","rebac_allow":false,"scope_allow":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":"37da6d40-49d8-11ef-9fe8-9113c2c8d024","responseTime":17,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0518bf4c-05b6-41b2-b254-8652983f1c0f#owner@http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0518bf4c-05b6-41b2-b254-8652983f1c0f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"f5cb0cc2-d5bd-4500-98bd-0791c6b4a7e8","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837847.0874138} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5ec3659d-ffb9-4e84-b7bf-4f07a18aea04","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837847.0879474} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"37d982e0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"88c123c2be8364cabc9f45813d1b2a59","responseTime":22,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"GET /devices/5354607c-25c6-4726-a075-77f3889bc4ad? 200 36ms","method":"GET","requestID":"37d982e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":36,"status":200,"url":"/devices/5354607c-25c6-4726-a075-77f3889bc4ad?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"37d9f810-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d? 200 34ms","method":"GET","requestID":"37d9f810-49d8-11ef-9fe8-9113c2c8d024","responseTime":34,"status":200,"url":"/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"37da6d40-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/5354607c-25c6-4726-a075-77f3889bc4ad/signaling 200 33ms","method":"POST","requestID":"37da6d40-49d8-11ef-9fe8-9113c2c8d024","responseTime":33,"status":200,"url":"/devices/5354607c-25c6-4726-a075-77f3889bc4ad/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"37e0aed0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"37e0fcf0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":44,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:27Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5354607c-25c6-4726-a075-77f3889bc4ad","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"33110888-793f-4868-9f63-50431be53b8b","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837847.1072805} authorization-1 | {"client_addr":"127.0.0.1:51350","level":"info","msg":"Received request.","req_id":45,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:27Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":44,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.639434,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5354607c-25c6-4726-a075-77f3889bc4ad","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"37e0aed0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5354607c-25c6-4726-a075-77f3889bc4ad","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"37e0aed0-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/0518bf4c-05b6-41b2-b254-8652983f1c0f","user":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"88c123c2be8364cabc9f45813d1b2a59"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b4bbfe5-5935-4723-80e8-8e6aae7d037d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"20e5dc3a-3a6d-4f80-a87a-30ffe43620ab","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837847.109382} gateway-1 | {"time_local":"24/Jul/2024:16:17:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"811","request_time":"0.208","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"88c123c2be8364cabc9f45813d1b2a59"} authorization-1 | {"client_addr":"127.0.0.1:51350","level":"info","msg":"Sent response.","req_id":45,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.761219,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:27Z"} experiment-1 | {"level":"info","message":"POST /experiments? 201 199ms","method":"POST","requestID":"88c123c2be8364cabc9f45813d1b2a59","responseTime":199,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"37e0fcf0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d","object_type":"device","rebac_allow":false,"scope_allow":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":"37e0fcf0-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"37e0aed0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/5354607c-25c6-4726-a075-77f3889bc4ad/signaling 200 13ms","method":"POST","requestID":"37e0aed0-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/devices/5354607c-25c6-4726-a075-77f3889bc4ad/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"37e0fcf0-49d8-11ef-9fe8-9113c2c8d024"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0N30.hqH8-wysfuYQfLtuZJ7aHC2kAa98B3PaxZOX12upAz4","level":"info","message":"auth send jwt","requestID":"8c446410a2b9e22aa50db9baa16af6a4"} device-1 | {"level":"info","message":"POST /devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d/signaling 200 15ms","method":"POST","requestID":"37e0fcf0-49d8-11ef-9fe8-9113c2c8d024","responseTime":15,"status":200,"url":"/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d/signaling"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"8c446410a2b9e22aa50db9baa16af6a4","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"37e346e0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8c446410a2b9e22aa50db9baa16af6a4"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":46,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51350","level":"info","msg":"Received request.","req_id":47,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:27Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b4bbfe5-5935-4723-80e8-8e6aae7d037d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"478b8460-b36f-496f-be1b-2aa3c54e4930","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837847.123569} authorization-1 | {"client_addr":"127.0.0.1:51350","level":"info","msg":"Sent response.","req_id":47,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.922896,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5354607c-25c6-4726-a075-77f3889bc4ad","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"8c446410a2b9e22aa50db9baa16af6a4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/5354607c-25c6-4726-a075-77f3889bc4ad","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837847,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0N30.hqH8-wysfuYQfLtuZJ7aHC2kAa98B3PaxZOX12upAz4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8c446410a2b9e22aa50db9baa16af6a4","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":46,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.577692,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"37e346e0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"37e346e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5354607c-25c6-4726-a075-77f3889bc4ad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5354607c-25c6-4726-a075-77f3889bc4ad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:24.760814022Z"}]},"request_id":"4bceb972-44c8-46e6-b209-b33ffc994fae","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837847.1279128} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"37e346e0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d/signaling 200 10ms","method":"POST","requestID":"37e346e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"8c446410a2b9e22aa50db9baa16af6a4","responseTime":2,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0518bf4c-05b6-41b2-b254-8652983f1c0f"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"88c123c2be8364cabc9f45813d1b2a59"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0518bf4c-05b6-41b2-b254-8652983f1c0f"},"level":"info","message":"Building connection plan","requestID":"88c123c2be8364cabc9f45813d1b2a59"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"4b8b6f0a-a2a0-40e7-9562-2e550198ed39"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"f630138f-4bdf-4402-b50c-b089a126e312"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"09d6e795-fb3a-400c-9132-1fd4d20a503f"}]},"level":"info","message":"Built pairwise service configurations","requestID":"88c123c2be8364cabc9f45813d1b2a59"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/5354607c-25c6-4726-a075-77f3889bc4ad"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"88c123c2be8364cabc9f45813d1b2a59"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"37e569c0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8c446410a2b9e22aa50db9baa16af6a4"} gateway-1 | {"time_local":"24/Jul/2024:16:17:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5354607c-25c6-4726-a075-77f3889bc4ad? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8c446410a2b9e22aa50db9baa16af6a4"} device-1 | {"level":"info","message":"GET /devices/5354607c-25c6-4726-a075-77f3889bc4ad? 200 14ms","method":"GET","requestID":"8c446410a2b9e22aa50db9baa16af6a4","responseTime":14,"status":200,"url":"/devices/5354607c-25c6-4726-a075-77f3889bc4ad?"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":48,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:27Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":48,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.798371,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:27Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"37e569c0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837846,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0Nn0.bs36Erblb2xcYMcxvX67gfP-HtcV0pxTAKWBxFxfitM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"37e569c0-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0N30.hqH8-wysfuYQfLtuZJ7aHC2kAa98B3PaxZOX12upAz4","level":"info","message":"auth send jwt","requestID":"7e0ab7b64950e7b224b8c46877a11342"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7e0ab7b64950e7b224b8c46877a11342","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7e0ab7b64950e7b224b8c46877a11342"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":49,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:27Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":49,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.692043,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"7e0ab7b64950e7b224b8c46877a11342","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837847,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0N30.hqH8-wysfuYQfLtuZJ7aHC2kAa98B3PaxZOX12upAz4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7e0ab7b64950e7b224b8c46877a11342","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","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%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"fcdc2395-f27d-4511-b28a-b45d091b37b7","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837847.1519945} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a7f2ebc0-1c3f-4c23-ab7c-0d69203bc9dc","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837847.152338} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"37e569c0-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b4bbfe5-5935-4723-80e8-8e6aae7d037d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b4bbfe5-5935-4723-80e8-8e6aae7d037d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:24.811009949Z"}]},"request_id":"cf44a4be-3579-4b2d-bb2d-640462565ea3","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837847.1536553} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7e0ab7b64950e7b224b8c46877a11342","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7e0ab7b64950e7b224b8c46877a11342"} device-1 | {"level":"info","message":"GET /devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d? 200 17ms","method":"GET","requestID":"7e0ab7b64950e7b224b8c46877a11342","responseTime":17,"status":200,"url":"/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d?"} gateway-1 | {"time_local":"24/Jul/2024:16:17:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7e0ab7b64950e7b224b8c46877a11342"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"37e569c0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"37e569c0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/6e12e758-a884-41fd-9c61-d740892a71d4'","requestID":"37e569c0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/6e12e758-a884-41fd-9c61-d740892a71d4'","requestID":"37e569c0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"37e569c0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 35ms","method":"POST","requestID":"37e569c0-49d8-11ef-9fe8-9113c2c8d024","responseTime":35,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"37e569c0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/6e12e758-a884-41fd-9c61-d740892a71d4","device":"5354607c-25c6-4726-a075-77f3889bc4ad","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0518bf4c-05b6-41b2-b254-8652983f1c0f"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"88c123c2be8364cabc9f45813d1b2a59"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"37ef06b0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":50,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:27Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5354607c-25c6-4726-a075-77f3889bc4ad","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"65ab9a8d-6546-4501-b2af-5ed52a6fc5c1","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837847.1998584} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":50,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.297105,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5354607c-25c6-4726-a075-77f3889bc4ad","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"37ef06b0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5354607c-25c6-4726-a075-77f3889bc4ad","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"37ef06b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"37ef06b0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/5354607c-25c6-4726-a075-77f3889bc4ad/signaling 200 9ms","method":"POST","requestID":"37ef06b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/devices/5354607c-25c6-4726-a075-77f3889bc4ad/signaling"} device-1 | {"device":"5354607c-25c6-4726-a075-77f3889bc4ad","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"5354607c-25c6-4726-a075-77f3889bc4ad","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"37f10280-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":51,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:27Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b4bbfe5-5935-4723-80e8-8e6aae7d037d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8206728d-2391-4dd0-8e06-1d082d2e38e8","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837847.2122025} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":51,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.206422,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"37f10280-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d","object_type":"device","rebac_allow":false,"scope_allow":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":"37f10280-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"37f10280-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d/signaling 200 8ms","method":"POST","requestID":"37f10280-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d/signaling"} device-1 | {"device":"5b4bbfe5-5935-4723-80e8-8e6aae7d037d","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"6e12e758-a884-41fd-9c61-d740892a71d4","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 5293284791469457183 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:SqEB\r\na=ice-pwd:kWHP8pxmOt3YJz6iaYDnytRL\r\na=ice-options:trickle\r\na=fingerprint:sha-256 D4:62:EA:7B:75:03:72:33:0A:75:D3:98:2B:DE:C9:6E:E2:89:8B:E9:06:CE:D0:36:72:C0:02:D9:F6:26:89:0D\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"5354607c-25c6-4726-a075-77f3889bc4ad","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:4180963440 1 udp 2113937151 e51d0647-086d-4b8e-8701-7a669b3b1f0e.local 42714 typ host generation 0 ufrag SqEB network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"5354607c-25c6-4726-a075-77f3889bc4ad","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"5354607c-25c6-4726-a075-77f3889bc4ad","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:1780470115 1 udp 1677729535 141.24.211.56 42714 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag SqEB network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"5354607c-25c6-4726-a075-77f3889bc4ad","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/5354607c-25c6-4726-a075-77f3889bc4ad'"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/6e12e758-a884-41fd-9c61-d740892a71d4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6e12e758-a884-41fd-9c61-d740892a71d4","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"5354607c-25c6-4726-a075-77f3889bc4ad","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/5354607c-25c6-4726-a075-77f3889bc4ad'"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"47f59bb691c0785aaf248b600c7e564f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"47f59bb691c0785aaf248b600c7e564f","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/5354607c-25c6-4726-a075-77f3889bc4ad"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/6e12e758-a884-41fd-9c61-d740892a71d4"}}},"level":"info","message":"received a callback","requestID":"47f59bb691c0785aaf248b600c7e564f"} device-1 | {"device":"5b4bbfe5-5935-4723-80e8-8e6aae7d037d","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"5b4bbfe5-5935-4723-80e8-8e6aae7d037d","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"5b4bbfe5-5935-4723-80e8-8e6aae7d037d","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"47f59bb691c0785aaf248b600c7e564f","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:17: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.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"47f59bb691c0785aaf248b600c7e564f"} device-1 | {"data":{"peerconnection":"6e12e758-a884-41fd-9c61-d740892a71d4","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"5b4bbfe5-5935-4723-80e8-8e6aae7d037d","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"5354607c-25c6-4726-a075-77f3889bc4ad","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"5b4bbfe5-5935-4723-80e8-8e6aae7d037d","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"6e12e758-a884-41fd-9c61-d740892a71d4","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"5354607c-25c6-4726-a075-77f3889bc4ad","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/6e12e758-a884-41fd-9c61-d740892a71d4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6e12e758-a884-41fd-9c61-d740892a71d4","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8b58cf6233b0caf1d84700f873b6db2c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8b58cf6233b0caf1d84700f873b6db2c","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/5354607c-25c6-4726-a075-77f3889bc4ad"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/6e12e758-a884-41fd-9c61-d740892a71d4"}}},"level":"info","message":"received a callback","requestID":"8b58cf6233b0caf1d84700f873b6db2c"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"393ac090-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":52,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:29Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6e12e758-a884-41fd-9c61-d740892a71d4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"74688609-219b-452f-9f6e-54f2ae495478","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837849.3776968} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":52,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":5.014284,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/6e12e758-a884-41fd-9c61-d740892a71d4","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"393ac090-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/6e12e758-a884-41fd-9c61-d740892a71d4","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":"393ac090-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"393ac090-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /peerconnections/6e12e758-a884-41fd-9c61-d740892a71d4 200 13ms","method":"GET","requestID":"393ac090-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/peerconnections/6e12e758-a884-41fd-9c61-d740892a71d4"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 51ms","method":"POST","requestID":"8b58cf6233b0caf1d84700f873b6db2c","responseTime":51,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:17: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.056","http_referrer":"","http_user_agent":"node-fetch","requestID":"8b58cf6233b0caf1d84700f873b6db2c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"39412930-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":53,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:29Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5354607c-25c6-4726-a075-77f3889bc4ad","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"40cf9902-031e-4bb9-8564-35e5eb14e458","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837849.418124} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":53,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.249805,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5354607c-25c6-4726-a075-77f3889bc4ad","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"39412930-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5354607c-25c6-4726-a075-77f3889bc4ad","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"39412930-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"39412930-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/5354607c-25c6-4726-a075-77f3889bc4ad/signaling 200 13ms","method":"POST","requestID":"39412930-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/devices/5354607c-25c6-4726-a075-77f3889bc4ad/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3943c140-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":54,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:29Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b4bbfe5-5935-4723-80e8-8e6aae7d037d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aef8dc3a-3556-4d2e-81e2-d9de72d4b9a6","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837849.4343853} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":54,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.753579,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3943c140-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d","object_type":"device","rebac_allow":false,"scope_allow":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":"3943c140-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3943c140-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d/signaling 200 14ms","method":"POST","requestID":"3943c140-49d8-11ef-9fe8-9113c2c8d024","responseTime":14,"status":200,"url":"/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0OX0.w_ngvrMzplhUIDgXnu5TQxp1YXqQXjSdj4pAhfl1F94","level":"info","message":"auth send jwt","requestID":"2850628ab7db8f1ace730add3e9a755a"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"2850628ab7db8f1ace730add3e9a755a","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/0518bf4c-05b6-41b2-b254-8652983f1c0f","requestID":"2850628ab7db8f1ace730add3e9a755a"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":55,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:29Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":55,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.364049,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/0518bf4c-05b6-41b2-b254-8652983f1c0f","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"2850628ab7db8f1ace730add3e9a755a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/0518bf4c-05b6-41b2-b254-8652983f1c0f","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837849,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0OX0.w_ngvrMzplhUIDgXnu5TQxp1YXqQXjSdj4pAhfl1F94"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2850628ab7db8f1ace730add3e9a755a","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/0518bf4c-05b6-41b2-b254-8652983f1c0f","requestID":"2850628ab7db8f1ace730add3e9a755a"} gateway-1 | {"time_local":"24/Jul/2024:16:17:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/0518bf4c-05b6-41b2-b254-8652983f1c0f HTTP/1.1","status": "200","body_bytes_sent":"884","request_time":"0.030","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2850628ab7db8f1ace730add3e9a755a"} experiment-1 | {"level":"info","message":"GET /experiments/0518bf4c-05b6-41b2-b254-8652983f1c0f 200 20ms","method":"GET","requestID":"2850628ab7db8f1ace730add3e9a755a","responseTime":20,"status":200,"url":"/experiments/0518bf4c-05b6-41b2-b254-8652983f1c0f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0OX0.w_ngvrMzplhUIDgXnu5TQxp1YXqQXjSdj4pAhfl1F94","level":"info","message":"auth send jwt","requestID":"5247f80a5282dd44283ad5a11f3994d4"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"5247f80a5282dd44283ad5a11f3994d4","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/0518bf4c-05b6-41b2-b254-8652983f1c0f","requestID":"5247f80a5282dd44283ad5a11f3994d4"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":56,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:29Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":56,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.182809,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:29Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/0518bf4c-05b6-41b2-b254-8652983f1c0f","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5247f80a5282dd44283ad5a11f3994d4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/0518bf4c-05b6-41b2-b254-8652983f1c0f","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837849,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0OX0.w_ngvrMzplhUIDgXnu5TQxp1YXqQXjSdj4pAhfl1F94"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5247f80a5282dd44283ad5a11f3994d4","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0518bf4c-05b6-41b2-b254-8652983f1c0f"},"level":"info","message":"Attempting to finish experiment","requestID":"5247f80a5282dd44283ad5a11f3994d4"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"394f0be0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":57,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:29Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":57,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.833086,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:29Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/6e12e758-a884-41fd-9c61-d740892a71d4","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"394f0be0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:http://localhost/peerconnections/6e12e758-a884-41fd-9c61-d740892a71d4","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837849,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0OX0.w_ngvrMzplhUIDgXnu5TQxp1YXqQXjSdj4pAhfl1F94"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"394f0be0-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/6e12e758-a884-41fd-9c61-d740892a71d4","device":"5354607c-25c6-4726-a075-77f3889bc4ad","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"5b4bbfe5-5935-4723-80e8-8e6aae7d037d","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"5b4bbfe5-5935-4723-80e8-8e6aae7d037d","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"5b4bbfe5-5935-4723-80e8-8e6aae7d037d","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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/6e12e758-a884-41fd-9c61-d740892a71d4' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/6e12e758-a884-41fd-9c61-d740892a71d4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6e12e758-a884-41fd-9c61-d740892a71d4","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6e12e758-a884-41fd-9c61-d740892a71d4': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6e12e758-a884-41fd-9c61-d740892a71d4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"7c5a80ce-e5a6-44de-93f0-d75f29c75c9d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837849.5357378} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4cee5153996561fe91a7cf99649df9d8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4cee5153996561fe91a7cf99649df9d8","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e049e35d-0185-4672-95c9-78ac9746164d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837849.5365202} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"394f0be0-49d8-11ef-9fe8-9113c2c8d024","responseTime":15,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9102d507e3feeeb8577e4d29aa10ba55","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"9102d507e3feeeb8577e4d29aa10ba55","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/5354607c-25c6-4726-a075-77f3889bc4ad"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/6e12e758-a884-41fd-9c61-d740892a71d4"}}},"level":"info","message":"received a callback","requestID":"4cee5153996561fe91a7cf99649df9d8"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/5354607c-25c6-4726-a075-77f3889bc4ad"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/6e12e758-a884-41fd-9c61-d740892a71d4"}}},"level":"info","message":"received a callback","requestID":"9102d507e3feeeb8577e4d29aa10ba55"} device-1 | {"data":{"peerconnection":"6e12e758-a884-41fd-9c61-d740892a71d4","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"394f0be0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"DELETE /peerconnections/6e12e758-a884-41fd-9c61-d740892a71d4 204 59ms","method":"DELETE","requestID":"394f0be0-49d8-11ef-9fe8-9113c2c8d024","responseTime":59,"status":204,"url":"/peerconnections/6e12e758-a884-41fd-9c61-d740892a71d4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0518bf4c-05b6-41b2-b254-8652983f1c0f"},"level":"info","message":"Successfully finished experiment","requestID":"5247f80a5282dd44283ad5a11f3994d4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"395c5250-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":58,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:29Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5354607c-25c6-4726-a075-77f3889bc4ad","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"393b06d7-f022-456e-86dd-c8880a384aea","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837849.5973415} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":58,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.903319,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5354607c-25c6-4726-a075-77f3889bc4ad","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"395c5250-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5354607c-25c6-4726-a075-77f3889bc4ad","object_type":"device","rebac_allow":false,"scope_allow":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":"395c5250-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"395c5250-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/5354607c-25c6-4726-a075-77f3889bc4ad/signaling 200 16ms","method":"POST","requestID":"395c5250-49d8-11ef-9fe8-9113c2c8d024","responseTime":16,"status":200,"url":"/devices/5354607c-25c6-4726-a075-77f3889bc4ad/signaling"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0518bf4c-05b6-41b2-b254-8652983f1c0f': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0518bf4c-05b6-41b2-b254-8652983f1c0f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"49250e17-1f05-415c-9428-38fe0f0c2546","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837849.6066537} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f502d842-521b-4fe4-b0ed-aa06188168e6","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837849.6078138} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"395f86a0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"5247f80a5282dd44283ad5a11f3994d4","responseTime":25,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":59,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:29Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b4bbfe5-5935-4723-80e8-8e6aae7d037d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c27ab54b-ec3a-434c-a082-6987358c6d6c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837849.619553} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":59,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.927587,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"395f86a0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d","object_type":"device","rebac_allow":false,"scope_allow":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":"395f86a0-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"395f86a0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d/signaling 200 17ms","method":"POST","requestID":"395f86a0-49d8-11ef-9fe8-9113c2c8d024","responseTime":17,"status":200,"url":"/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/0518bf4c-05b6-41b2-b254-8652983f1c0f","requestID":"5247f80a5282dd44283ad5a11f3994d4"} gateway-1 | {"time_local":"24/Jul/2024:16:17:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/0518bf4c-05b6-41b2-b254-8652983f1c0f HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.212","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5247f80a5282dd44283ad5a11f3994d4"} experiment-1 | {"level":"info","message":"DELETE /experiments/0518bf4c-05b6-41b2-b254-8652983f1c0f 204 205ms","method":"DELETE","requestID":"5247f80a5282dd44283ad5a11f3994d4","responseTime":205,"status":204,"url":"/experiments/0518bf4c-05b6-41b2-b254-8652983f1c0f"} gateway-1 | {"time_local":"24/Jul/2024:16:17:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2598","request_time":"4.202","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"dabb6bd0941af3e2e32803974272d4bd"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 149ms","method":"POST","requestID":"4cee5153996561fe91a7cf99649df9d8","responseTime":149,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:17: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.156","http_referrer":"","http_user_agent":"node-fetch","requestID":"4cee5153996561fe91a7cf99649df9d8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 148ms","method":"POST","requestID":"9102d507e3feeeb8577e4d29aa10ba55","responseTime":148,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:17: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.156","http_referrer":"","http_user_agent":"node-fetch","requestID":"9102d507e3feeeb8577e4d29aa10ba55"} gateway-1 | {"time_local":"24/Jul/2024:16:17:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2506","request_time":"2.874","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"938daef953d5ecc3c63ed9d71a6e3ea8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0OX0.w_ngvrMzplhUIDgXnu5TQxp1YXqQXjSdj4pAhfl1F94","level":"info","message":"auth send jwt","requestID":"6bbfae33733ea826c9bff9a0d1c80555"} authentication-1 | {"level":"info","message":"GET /auth 200 10ms","method":"GET","requestID":"6bbfae33733ea826c9bff9a0d1c80555","responseTime":10,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"6bbfae33733ea826c9bff9a0d1c80555"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":60,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:29Z"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/5b4bbfe5-5935-4723-80e8-8e6aae7d037d' closed"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":60,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.538111,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6bbfae33733ea826c9bff9a0d1c80555","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837849,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0OX0.w_ngvrMzplhUIDgXnu5TQxp1YXqQXjSdj4pAhfl1F94"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6bbfae33733ea826c9bff9a0d1c80555","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/5354607c-25c6-4726-a075-77f3889bc4ad' 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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dc61820-8f6d-47e6-bab4-130ee58e492a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0b285a58-7f8c-4891-a5e9-1bd2810a9e0e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837849.7234905} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6bbfae33733ea826c9bff9a0d1c80555","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"56b24f4e-f6af-4cc4-a2bb-3a6325c099ae","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837849.729273} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"6bbfae33733ea826c9bff9a0d1c80555","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dc61820-8f6d-47e6-bab4-130ee58e492a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"04999c5d-43c0-4507-bce2-512ed364c472","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837849.7442646} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"64dbd172-dc95-4202-a43f-83b038dfa2f9","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837849.7445896} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"6bbfae33733ea826c9bff9a0d1c80555","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dc61820-8f6d-47e6-bab4-130ee58e492a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dc61820-8f6d-47e6-bab4-130ee58e492a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:29.744247133Z"}]},"request_id":"985dcd4d-9153-4442-a195-9a660c8a8007","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837849.7495666} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6bbfae33733ea826c9bff9a0d1c80555","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"6bbfae33733ea826c9bff9a0d1c80555"} device-1 | {"level":"info","message":"POST /devices? 201 53ms","method":"POST","requestID":"6bbfae33733ea826c9bff9a0d1c80555","responseTime":53,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Jul/2024:16:17:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.065","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6bbfae33733ea826c9bff9a0d1c80555"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0OX0.w_ngvrMzplhUIDgXnu5TQxp1YXqQXjSdj4pAhfl1F94","level":"info","message":"auth send jwt","requestID":"17f8fb663bc5ca2336c509728662d0d3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"17f8fb663bc5ca2336c509728662d0d3","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"17f8fb663bc5ca2336c509728662d0d3"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":61,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:29Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":61,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.811277,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"17f8fb663bc5ca2336c509728662d0d3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837849,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg0OX0.w_ngvrMzplhUIDgXnu5TQxp1YXqQXjSdj4pAhfl1F94"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"17f8fb663bc5ca2336c509728662d0d3","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F525a4957-e91e-47df-bf62-3b6de013a4c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e44a33e1-ba59-4b2e-b87c-fdb8cf5a2cb4","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837849.7757988} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"17f8fb663bc5ca2336c509728662d0d3","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"31482166-b2fb-4ca7-ac96-6bc8c6d2f84e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837849.7808402} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"17f8fb663bc5ca2336c509728662d0d3","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F525a4957-e91e-47df-bf62-3b6de013a4c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"006334f1-daa4-4381-8826-f38880f0cf70","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837849.7940192} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"38eacdfa-1507-4e08-965c-0be1d153602c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837849.7941508} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"17f8fb663bc5ca2336c509728662d0d3","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F525a4957-e91e-47df-bf62-3b6de013a4c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F525a4957-e91e-47df-bf62-3b6de013a4c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:29.794004651Z"}]},"request_id":"5db57635-d147-4c6a-9e9d-d8b9e7b1d3cb","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837849.7985508} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"17f8fb663bc5ca2336c509728662d0d3","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"17f8fb663bc5ca2336c509728662d0d3"} gateway-1 | {"time_local":"24/Jul/2024:16:17:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"17f8fb663bc5ca2336c509728662d0d3"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"17f8fb663bc5ca2336c509728662d0d3","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1MH0.mSsYNNWxr9xLGsLDTr2YuDleYQO9F8Tdl2GaN9MQV68","level":"info","message":"auth send jwt","requestID":"1d69904857cbd8c12eda706d2676e215"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"1d69904857cbd8c12eda706d2676e215","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"1d69904857cbd8c12eda706d2676e215"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":62,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:30Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":62,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.967418,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:30Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"1d69904857cbd8c12eda706d2676e215","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837850,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1MH0.mSsYNNWxr9xLGsLDTr2YuDleYQO9F8Tdl2GaN9MQV68"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1d69904857cbd8c12eda706d2676e215","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dc61820-8f6d-47e6-bab4-130ee58e492a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dc61820-8f6d-47e6-bab4-130ee58e492a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:29.744247133Z"}]},"request_id":"563f45bd-0e53-4122-9749-5027e1b3a7db","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837850.3031492} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1d69904857cbd8c12eda706d2676e215","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"50041538-f27f-4db3-814f-c4b59d94eb40","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837850.3099463} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"1d69904857cbd8c12eda706d2676e215","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dc61820-8f6d-47e6-bab4-130ee58e492a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dc61820-8f6d-47e6-bab4-130ee58e492a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:29.744247133Z"}]},"request_id":"6d6c01b0-713f-473b-8e70-dfb0d754443f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837850.3247392} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1d69904857cbd8c12eda706d2676e215","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"1d69904857cbd8c12eda706d2676e215"} device-1 | {"level":"info","message":"PATCH /devices/9dc61820-8f6d-47e6-bab4-130ee58e492a 200 38ms","method":"PATCH","requestID":"1d69904857cbd8c12eda706d2676e215","responseTime":38,"status":200,"url":"/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a"} gateway-1 | {"time_local":"24/Jul/2024:16:17:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/9dc61820-8f6d-47e6-bab4-130ee58e492a HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.045","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"1d69904857cbd8c12eda706d2676e215"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1MH0.mSsYNNWxr9xLGsLDTr2YuDleYQO9F8Tdl2GaN9MQV68","level":"info","message":"auth send jwt","requestID":"6902d18320de0dbe8beb118727804b94"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"6902d18320de0dbe8beb118727804b94","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"6902d18320de0dbe8beb118727804b94"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":63,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:30Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":63,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.104477,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:30Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6902d18320de0dbe8beb118727804b94","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837850,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1MH0.mSsYNNWxr9xLGsLDTr2YuDleYQO9F8Tdl2GaN9MQV68"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6902d18320de0dbe8beb118727804b94","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"6902d18320de0dbe8beb118727804b94"} gateway-1 | {"time_local":"24/Jul/2024:16:17:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/9dc61820-8f6d-47e6-bab4-130ee58e492a/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.029","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"6902d18320de0dbe8beb118727804b94"} device-1 | {"level":"info","message":"POST /devices/9dc61820-8f6d-47e6-bab4-130ee58e492a/websocket 200 22ms","method":"POST","requestID":"6902d18320de0dbe8beb118727804b94","responseTime":22,"status":200,"url":"/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5ce848cc144ac29bd5cb166bd815f854","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5ce848cc144ac29bd5cb166bd815f854","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Jul/2024:16:17:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/525a4957-e91e-47df-bf62-3b6de013a4c2/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":"5ce848cc144ac29bd5cb166bd815f854"} device-1 | {"level":"info","message":"OPTIONS /devices/525a4957-e91e-47df-bf62-3b6de013a4c2/websocket 200 1ms","method":"OPTIONS","requestID":"5ce848cc144ac29bd5cb166bd815f854","responseTime":1,"status":200,"url":"/devices/525a4957-e91e-47df-bf62-3b6de013a4c2/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1MX0._Dd_yqUcGiwNmXMumYVp5yrG6Lw9L6Mg2UY8--glHiI","level":"info","message":"auth send jwt","requestID":"b8eec9b0e939d5d7658b657728b500a3"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"b8eec9b0e939d5d7658b657728b500a3","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"b8eec9b0e939d5d7658b657728b500a3"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":64,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:31Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":64,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.359248,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:31Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/525a4957-e91e-47df-bf62-3b6de013a4c2","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"b8eec9b0e939d5d7658b657728b500a3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/525a4957-e91e-47df-bf62-3b6de013a4c2","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837851,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1MX0._Dd_yqUcGiwNmXMumYVp5yrG6Lw9L6Mg2UY8--glHiI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b8eec9b0e939d5d7658b657728b500a3","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"b8eec9b0e939d5d7658b657728b500a3"} gateway-1 | {"time_local":"24/Jul/2024:16:17:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/525a4957-e91e-47df-bf62-3b6de013a4c2/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":"b8eec9b0e939d5d7658b657728b500a3"} device-1 | {"level":"info","message":"POST /devices/525a4957-e91e-47df-bf62-3b6de013a4c2/websocket 200 23ms","method":"POST","requestID":"b8eec9b0e939d5d7658b657728b500a3","responseTime":23,"status":200,"url":"/devices/525a4957-e91e-47df-bf62-3b6de013a4c2/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/525a4957-e91e-47df-bf62-3b6de013a4c2' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1MX0._Dd_yqUcGiwNmXMumYVp5yrG6Lw9L6Mg2UY8--glHiI","level":"info","message":"auth send jwt","requestID":"f1692f40bf6def0351ee9ccda7b66f70"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f1692f40bf6def0351ee9ccda7b66f70","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f1692f40bf6def0351ee9ccda7b66f70"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":65,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:31Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":65,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.241181,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"f1692f40bf6def0351ee9ccda7b66f70","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837851,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1MX0._Dd_yqUcGiwNmXMumYVp5yrG6Lw9L6Mg2UY8--glHiI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f1692f40bf6def0351ee9ccda7b66f70","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dc61820-8f6d-47e6-bab4-130ee58e492a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dc61820-8f6d-47e6-bab4-130ee58e492a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:29.744247133Z"}]},"request_id":"f6c5dadc-c7d7-4230-9dde-9d58294bab74","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837851.887156} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f1692f40bf6def0351ee9ccda7b66f70","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f1692f40bf6def0351ee9ccda7b66f70"} gateway-1 | {"time_local":"24/Jul/2024:16:17:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9dc61820-8f6d-47e6-bab4-130ee58e492a? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f1692f40bf6def0351ee9ccda7b66f70"} device-1 | {"level":"info","message":"GET /devices/9dc61820-8f6d-47e6-bab4-130ee58e492a? 200 20ms","method":"GET","requestID":"f1692f40bf6def0351ee9ccda7b66f70","responseTime":20,"status":200,"url":"/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1MX0._Dd_yqUcGiwNmXMumYVp5yrG6Lw9L6Mg2UY8--glHiI","level":"info","message":"auth send jwt","requestID":"88f8520056ee9aa3aff092545c7dd6f8"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"88f8520056ee9aa3aff092545c7dd6f8","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"88f8520056ee9aa3aff092545c7dd6f8"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":66,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:31Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":66,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.16571,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/525a4957-e91e-47df-bf62-3b6de013a4c2","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"88f8520056ee9aa3aff092545c7dd6f8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/525a4957-e91e-47df-bf62-3b6de013a4c2","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837851,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1MX0._Dd_yqUcGiwNmXMumYVp5yrG6Lw9L6Mg2UY8--glHiI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"88f8520056ee9aa3aff092545c7dd6f8","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F525a4957-e91e-47df-bf62-3b6de013a4c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F525a4957-e91e-47df-bf62-3b6de013a4c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:29.794004651Z"}]},"request_id":"10820dd9-3c44-432c-8410-b08e1dc30494","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837851.9163373} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"88f8520056ee9aa3aff092545c7dd6f8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"88f8520056ee9aa3aff092545c7dd6f8"} gateway-1 | {"time_local":"24/Jul/2024:16:17:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/525a4957-e91e-47df-bf62-3b6de013a4c2? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"88f8520056ee9aa3aff092545c7dd6f8"} device-1 | {"level":"info","message":"GET /devices/525a4957-e91e-47df-bf62-3b6de013a4c2? 200 19ms","method":"GET","requestID":"88f8520056ee9aa3aff092545c7dd6f8","responseTime":19,"status":200,"url":"/devices/525a4957-e91e-47df-bf62-3b6de013a4c2?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1MX0._Dd_yqUcGiwNmXMumYVp5yrG6Lw9L6Mg2UY8--glHiI","level":"info","message":"auth send jwt","requestID":"2922eb83f42e46e20d2a887a7b543a34"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"2922eb83f42e46e20d2a887a7b543a34","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"2922eb83f42e46e20d2a887a7b543a34"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":67,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:31Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":67,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.258221,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"2922eb83f42e46e20d2a887a7b543a34","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837851,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1MX0._Dd_yqUcGiwNmXMumYVp5yrG6Lw9L6Mg2UY8--glHiI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2922eb83f42e46e20d2a887a7b543a34","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c4edb89-c7f1-4d72-8bcb-3c967268bc5f"},"level":"info","message":"Attempting to run experiment","requestID":"2922eb83f42e46e20d2a887a7b543a34"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c4edb89-c7f1-4d72-8bcb-3c967268bc5f"},"level":"info","message":"Attempting to book experiment","requestID":"2922eb83f42e46e20d2a887a7b543a34"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c4edb89-c7f1-4d72-8bcb-3c967268bc5f"},"level":"info","message":"Successfully booked experiment","requestID":"2922eb83f42e46e20d2a887a7b543a34"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3ac9c500-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3aca1320-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":68,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:31Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":68,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.631307,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3ac9c500-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837851,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1MX0._Dd_yqUcGiwNmXMumYVp5yrG6Lw9L6Mg2UY8--glHiI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3ac9c500-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Received request.","req_id":69,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:31Z"} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Sent response.","req_id":69,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.697092,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/525a4957-e91e-47df-bf62-3b6de013a4c2","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3aca1320-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/525a4957-e91e-47df-bf62-3b6de013a4c2","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837851,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1MX0._Dd_yqUcGiwNmXMumYVp5yrG6Lw9L6Mg2UY8--glHiI"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"3aca1320-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dc61820-8f6d-47e6-bab4-130ee58e492a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dc61820-8f6d-47e6-bab4-130ee58e492a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:29.744247133Z"}]},"request_id":"6beb78d4-c6d8-4ef6-b1a4-b4152edfefd5","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837851.9979548} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"3ac9c500-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F525a4957-e91e-47df-bf62-3b6de013a4c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F525a4957-e91e-47df-bf62-3b6de013a4c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:29.794004651Z"}]},"request_id":"5d9a1e42-9f49-4b22-a48a-1b00f1ce8639","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837852.006158} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3ac9c500-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/9dc61820-8f6d-47e6-bab4-130ee58e492a? 200 24ms","method":"GET","requestID":"3ac9c500-49d8-11ef-9fe8-9113c2c8d024","responseTime":24,"status":200,"url":"/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"3aca1320-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3aca1320-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/525a4957-e91e-47df-bf62-3b6de013a4c2? 200 27ms","method":"GET","requestID":"3aca1320-49d8-11ef-9fe8-9113c2c8d024","responseTime":27,"status":200,"url":"/devices/525a4957-e91e-47df-bf62-3b6de013a4c2?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c4edb89-c7f1-4d72-8bcb-3c967268bc5f"},"level":"info","message":"Setting up experiment","requestID":"2922eb83f42e46e20d2a887a7b543a34"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c4edb89-c7f1-4d72-8bcb-3c967268bc5f"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"2922eb83f42e46e20d2a887a7b543a34"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c4edb89-c7f1-4d72-8bcb-3c967268bc5f"},"level":"info","message":"Successfully locked booking for experiment","requestID":"2922eb83f42e46e20d2a887a7b543a34"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c4edb89-c7f1-4d72-8bcb-3c967268bc5f"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"2922eb83f42e46e20d2a887a7b543a34"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c4edb89-c7f1-4d72-8bcb-3c967268bc5f"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"2922eb83f42e46e20d2a887a7b543a34"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c4edb89-c7f1-4d72-8bcb-3c967268bc5f"},"level":"info","message":"Attempting to update booking for experiment","requestID":"2922eb83f42e46e20d2a887a7b543a34"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c4edb89-c7f1-4d72-8bcb-3c967268bc5f"},"level":"info","message":"Successfully updated booking for experiment","requestID":"2922eb83f42e46e20d2a887a7b543a34"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c4edb89-c7f1-4d72-8bcb-3c967268bc5f"},"level":"info","message":"Successfully set up experiment","requestID":"2922eb83f42e46e20d2a887a7b543a34"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3ad86b00-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3ad8e030-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3ad95560-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":70,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:32Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":70,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.141016,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3ad86b00-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837851,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1MX0._Dd_yqUcGiwNmXMumYVp5yrG6Lw9L6Mg2UY8--glHiI"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"3ad86b00-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Received request.","req_id":71,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:32Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c4edb89-c7f1-4d72-8bcb-3c967268bc5f"},"level":"info","message":"Successfully running experiment","requestID":"2922eb83f42e46e20d2a887a7b543a34"} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Sent response.","req_id":71,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.753321,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/525a4957-e91e-47df-bf62-3b6de013a4c2","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3ad8e030-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/525a4957-e91e-47df-bf62-3b6de013a4c2","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837851,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1MX0._Dd_yqUcGiwNmXMumYVp5yrG6Lw9L6Mg2UY8--glHiI"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"3ad8e030-49d8-11ef-9fe8-9113c2c8d024","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":72,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:32Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":72,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.375429,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:32Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dc61820-8f6d-47e6-bab4-130ee58e492a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e27985ca-3fd4-46c8-926d-187754f196e4","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837852.0977705} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3ad95560-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a","object_type":"device","rebac_allow":false,"scope_allow":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":"3ad95560-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3ad95560-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/9dc61820-8f6d-47e6-bab4-130ee58e492a/signaling 200 22ms","method":"POST","requestID":"3ad95560-49d8-11ef-9fe8-9113c2c8d024","responseTime":22,"status":200,"url":"/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a/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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F525a4957-e91e-47df-bf62-3b6de013a4c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F525a4957-e91e-47df-bf62-3b6de013a4c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:29.794004651Z"}]},"request_id":"40400f42-51db-4e2e-9ca6-c47345650a29","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837852.107051} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"3ad8e030-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dc61820-8f6d-47e6-bab4-130ee58e492a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dc61820-8f6d-47e6-bab4-130ee58e492a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:29.744247133Z"}]},"request_id":"962fd56c-3f32-41b3-b848-f8a8a92a6058","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837852.110907} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"3ad86b00-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3add4d00-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":73,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:32Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3ad8e030-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/525a4957-e91e-47df-bf62-3b6de013a4c2? 200 37ms","method":"GET","requestID":"3ad8e030-49d8-11ef-9fe8-9113c2c8d024","responseTime":37,"status":200,"url":"/devices/525a4957-e91e-47df-bf62-3b6de013a4c2?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3ad86b00-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/9dc61820-8f6d-47e6-bab4-130ee58e492a? 200 41ms","method":"GET","requestID":"3ad86b00-49d8-11ef-9fe8-9113c2c8d024","responseTime":41,"status":200,"url":"/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a?"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F525a4957-e91e-47df-bf62-3b6de013a4c2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"57a23a0d-b0d2-4e67-8f17-93538303106b","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837852.1207228} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":73,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.81572,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/525a4957-e91e-47df-bf62-3b6de013a4c2","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3add4d00-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/525a4957-e91e-47df-bf62-3b6de013a4c2","object_type":"device","rebac_allow":false,"scope_allow":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":"3add4d00-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5c4edb89-c7f1-4d72-8bcb-3c967268bc5f#owner@http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5c4edb89-c7f1-4d72-8bcb-3c967268bc5f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"17a84f73-493b-44a1-a646-2b5e7f152fc9","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837852.1227393} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"855aabd3-b8e7-4df9-a1cb-cc03494886ac","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837852.123123} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3adf6fe0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"level":"info","message":"POST /relations/update 200 28ms","method":"POST","requestID":"2922eb83f42e46e20d2a887a7b543a34","responseTime":28,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3add4d00-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":74,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:32Z"} device-1 | {"level":"info","message":"POST /devices/525a4957-e91e-47df-bf62-3b6de013a4c2/signaling 200 17ms","method":"POST","requestID":"3add4d00-49d8-11ef-9fe8-9113c2c8d024","responseTime":17,"status":200,"url":"/devices/525a4957-e91e-47df-bf62-3b6de013a4c2/signaling"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dc61820-8f6d-47e6-bab4-130ee58e492a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ec988315-9ad5-4f85-96f2-ae893b50aa14","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837852.1321256} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":74,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.080206,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3adf6fe0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a","object_type":"device","rebac_allow":false,"scope_allow":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":"3adf6fe0-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/5c4edb89-c7f1-4d72-8bcb-3c967268bc5f","user":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"2922eb83f42e46e20d2a887a7b543a34"} gateway-1 | {"time_local":"24/Jul/2024:16:17:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"811","request_time":"0.210","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2922eb83f42e46e20d2a887a7b543a34"} experiment-1 | {"level":"info","message":"POST /experiments? 201 202ms","method":"POST","requestID":"2922eb83f42e46e20d2a887a7b543a34","responseTime":202,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3adf6fe0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/9dc61820-8f6d-47e6-bab4-130ee58e492a/signaling 200 12ms","method":"POST","requestID":"3adf6fe0-49d8-11ef-9fe8-9113c2c8d024","responseTime":12,"status":200,"url":"/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1Mn0.lIUU4njzS7fYL7Z7iQ9mRzYs0UnKNp65lyZ3UsrTtZo","level":"info","message":"auth send jwt","requestID":"21773f5b8597b33dbdb806895b6e66c6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3ae1b9d0-49d8-11ef-9fe8-9113c2c8d024"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"21773f5b8597b33dbdb806895b6e66c6","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"21773f5b8597b33dbdb806895b6e66c6"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":75,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:32Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F525a4957-e91e-47df-bf62-3b6de013a4c2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2737441d-2b71-4bf7-8501-4a66fe9c58f4","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837852.147067} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Received request.","req_id":76,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:32Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":75,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.491115,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/525a4957-e91e-47df-bf62-3b6de013a4c2","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3ae1b9d0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/525a4957-e91e-47df-bf62-3b6de013a4c2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3ae1b9d0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Sent response.","req_id":76,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.047389,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"21773f5b8597b33dbdb806895b6e66c6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837852,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1Mn0.lIUU4njzS7fYL7Z7iQ9mRzYs0UnKNp65lyZ3UsrTtZo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"21773f5b8597b33dbdb806895b6e66c6","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3ae1b9d0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/525a4957-e91e-47df-bf62-3b6de013a4c2/signaling 200 13ms","method":"POST","requestID":"3ae1b9d0-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/devices/525a4957-e91e-47df-bf62-3b6de013a4c2/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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dc61820-8f6d-47e6-bab4-130ee58e492a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dc61820-8f6d-47e6-bab4-130ee58e492a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:29.744247133Z"}]},"request_id":"f82682e4-ccea-4faa-9be4-cb6420e35cc2","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837852.1553369} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c4edb89-c7f1-4d72-8bcb-3c967268bc5f"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"2922eb83f42e46e20d2a887a7b543a34"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c4edb89-c7f1-4d72-8bcb-3c967268bc5f"},"level":"info","message":"Building connection plan","requestID":"2922eb83f42e46e20d2a887a7b543a34"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"d0de4a71-4bab-4e35-a5fc-479785fc7056"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"cff62d8a-bb4c-4476-8e4b-a5f6102058a8"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"50c35b5e-bf9b-4472-b90a-34204b4026c2"}]},"level":"info","message":"Built pairwise service configurations","requestID":"2922eb83f42e46e20d2a887a7b543a34"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/525a4957-e91e-47df-bf62-3b6de013a4c2"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"2922eb83f42e46e20d2a887a7b543a34"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"21773f5b8597b33dbdb806895b6e66c6","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"3ae478f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"21773f5b8597b33dbdb806895b6e66c6"} gateway-1 | {"time_local":"24/Jul/2024:16:17:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9dc61820-8f6d-47e6-bab4-130ee58e492a? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"21773f5b8597b33dbdb806895b6e66c6"} device-1 | {"level":"info","message":"GET /devices/9dc61820-8f6d-47e6-bab4-130ee58e492a? 200 18ms","method":"GET","requestID":"21773f5b8597b33dbdb806895b6e66c6","responseTime":18,"status":200,"url":"/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a?"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":77,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:32Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":77,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.998066,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:32Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3ae478f0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837851,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1MX0._Dd_yqUcGiwNmXMumYVp5yrG6Lw9L6Mg2UY8--glHiI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3ae478f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1Mn0.lIUU4njzS7fYL7Z7iQ9mRzYs0UnKNp65lyZ3UsrTtZo","level":"info","message":"auth send jwt","requestID":"9b44a94555bf3d2672e45417dd5becaa"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9b44a94555bf3d2672e45417dd5becaa","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9b44a94555bf3d2672e45417dd5becaa"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","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%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"a44681f5-e26c-4f35-917a-92d05d155c0a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837852.173828} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"760a2dfe-9d09-47a9-a55a-e1817d18c8b1","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837852.1740072} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"3ae478f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":78,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:32Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":78,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.030968,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/525a4957-e91e-47df-bf62-3b6de013a4c2","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"9b44a94555bf3d2672e45417dd5becaa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/525a4957-e91e-47df-bf62-3b6de013a4c2","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837852,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1Mn0.lIUU4njzS7fYL7Z7iQ9mRzYs0UnKNp65lyZ3UsrTtZo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9b44a94555bf3d2672e45417dd5becaa","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F525a4957-e91e-47df-bf62-3b6de013a4c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F525a4957-e91e-47df-bf62-3b6de013a4c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:29.794004651Z"}]},"request_id":"f19b8331-a031-4e11-85eb-88abc5e42ee5","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837852.1873658} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9b44a94555bf3d2672e45417dd5becaa","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"3ae478f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"3ae478f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/ac90c437-9f38-4b38-b44d-9bc22e3b5542'","requestID":"3ae478f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/ac90c437-9f38-4b38-b44d-9bc22e3b5542'","requestID":"3ae478f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"3ae478f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 39ms","method":"POST","requestID":"3ae478f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":39,"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":"9b44a94555bf3d2672e45417dd5becaa"} gateway-1 | {"time_local":"24/Jul/2024:16:17:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/525a4957-e91e-47df-bf62-3b6de013a4c2? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.037","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9b44a94555bf3d2672e45417dd5becaa"} device-1 | {"level":"info","message":"GET /devices/525a4957-e91e-47df-bf62-3b6de013a4c2? 200 30ms","method":"GET","requestID":"9b44a94555bf3d2672e45417dd5becaa","responseTime":30,"status":200,"url":"/devices/525a4957-e91e-47df-bf62-3b6de013a4c2?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"3ae478f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/ac90c437-9f38-4b38-b44d-9bc22e3b5542","device":"525a4957-e91e-47df-bf62-3b6de013a4c2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c4edb89-c7f1-4d72-8bcb-3c967268bc5f"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"2922eb83f42e46e20d2a887a7b543a34"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3aefc390-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":79,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:32Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dc61820-8f6d-47e6-bab4-130ee58e492a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7f60d7aa-006a-4a69-a74e-cc5577a2941a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837852.2373095} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":79,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.181655,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3aefc390-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a","object_type":"device","rebac_allow":false,"scope_allow":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":"3aefc390-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3aefc390-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/9dc61820-8f6d-47e6-bab4-130ee58e492a/signaling 200 9ms","method":"POST","requestID":"3aefc390-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3af17140-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"device":"525a4957-e91e-47df-bf62-3b6de013a4c2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"525a4957-e91e-47df-bf62-3b6de013a4c2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":80,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:32Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F525a4957-e91e-47df-bf62-3b6de013a4c2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c6b4ae7b-9acd-4100-b790-55e7646f7c8b","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837852.2493854} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":80,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.366783,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:32Z"} device-1 | {"content":{"sdp":"v=0\r\no=- 8271851895378284370 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:PgaS\r\na=ice-pwd:V3+rOe5AkdgBlh2vIyUxTXzT\r\na=ice-options:trickle\r\na=fingerprint:sha-256 3E:97:7F:54:22:AE:51:DF:48:0E:F6:82:A7:F9:1A:8B:2B:86:FB:03:F9:8A:BB:7B:CD:E9:D2:E5:5C:AF:8A:FF\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"525a4957-e91e-47df-bf62-3b6de013a4c2","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/525a4957-e91e-47df-bf62-3b6de013a4c2","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3af17140-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/525a4957-e91e-47df-bf62-3b6de013a4c2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3af17140-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3af17140-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/525a4957-e91e-47df-bf62-3b6de013a4c2/signaling 200 13ms","method":"POST","requestID":"3af17140-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/devices/525a4957-e91e-47df-bf62-3b6de013a4c2/signaling"} device-1 | {"device":"525a4957-e91e-47df-bf62-3b6de013a4c2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"9dc61820-8f6d-47e6-bab4-130ee58e492a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"ac90c437-9f38-4b38-b44d-9bc22e3b5542","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"9dc61820-8f6d-47e6-bab4-130ee58e492a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"9dc61820-8f6d-47e6-bab4-130ee58e492a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"9dc61820-8f6d-47e6-bab4-130ee58e492a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"9dc61820-8f6d-47e6-bab4-130ee58e492a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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/ac90c437-9f38-4b38-b44d-9bc22e3b5542' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ac90c437-9f38-4b38-b44d-9bc22e3b5542","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"30c5bcb88dfbeca6e994bda5ebcae25e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"30c5bcb88dfbeca6e994bda5ebcae25e","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/525a4957-e91e-47df-bf62-3b6de013a4c2"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/ac90c437-9f38-4b38-b44d-9bc22e3b5542"}}},"level":"info","message":"received a callback","requestID":"30c5bcb88dfbeca6e994bda5ebcae25e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 13ms","method":"POST","requestID":"30c5bcb88dfbeca6e994bda5ebcae25e","responseTime":13,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:17:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch","requestID":"30c5bcb88dfbeca6e994bda5ebcae25e"} device-1 | {"content":{"candidate":"candidate:2358896081 1 udp 2113937151 412c3d3d-0ebe-457c-89e2-47640517f3b5.local 57274 typ host generation 0 ufrag PgaS network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"525a4957-e91e-47df-bf62-3b6de013a4c2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:531776706 1 udp 1677729535 141.24.211.56 57274 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag PgaS network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"525a4957-e91e-47df-bf62-3b6de013a4c2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2711551792 1 udp 33562623 141.24.210.113 60361 typ relay raddr 141.24.211.56 rport 57274 generation 0 ufrag PgaS network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"525a4957-e91e-47df-bf62-3b6de013a4c2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"525a4957-e91e-47df-bf62-3b6de013a4c2","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/525a4957-e91e-47df-bf62-3b6de013a4c2'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/525a4957-e91e-47df-bf62-3b6de013a4c2'"} device-1 | {"data":{"peerconnection":"ac90c437-9f38-4b38-b44d-9bc22e3b5542","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"9dc61820-8f6d-47e6-bab4-130ee58e492a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"525a4957-e91e-47df-bf62-3b6de013a4c2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"9dc61820-8f6d-47e6-bab4-130ee58e492a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"ac90c437-9f38-4b38-b44d-9bc22e3b5542","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/ac90c437-9f38-4b38-b44d-9bc22e3b5542' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ac90c437-9f38-4b38-b44d-9bc22e3b5542","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8733e0b5a92ab5da8ccc6bc77b00508b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"8733e0b5a92ab5da8ccc6bc77b00508b","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/525a4957-e91e-47df-bf62-3b6de013a4c2"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/ac90c437-9f38-4b38-b44d-9bc22e3b5542"}}},"level":"info","message":"received a callback","requestID":"8733e0b5a92ab5da8ccc6bc77b00508b"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"3c331900-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":81,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:34Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fac90c437-9f38-4b38-b44d-9bc22e3b5542","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"05416340-01a4-4282-ae93-25a37accce30","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837854.3586204} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":81,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.590182,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ac90c437-9f38-4b38-b44d-9bc22e3b5542","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3c331900-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/ac90c437-9f38-4b38-b44d-9bc22e3b5542","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":"3c331900-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"3c331900-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /peerconnections/ac90c437-9f38-4b38-b44d-9bc22e3b5542 200 12ms","method":"GET","requestID":"3c331900-49d8-11ef-9fe8-9113c2c8d024","responseTime":12,"status":200,"url":"/peerconnections/ac90c437-9f38-4b38-b44d-9bc22e3b5542"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 46ms","method":"POST","requestID":"8733e0b5a92ab5da8ccc6bc77b00508b","responseTime":46,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:17:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch","requestID":"8733e0b5a92ab5da8ccc6bc77b00508b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3c395a90-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":82,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:34Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dc61820-8f6d-47e6-bab4-130ee58e492a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3b54686a-b249-4037-b28f-6196329f4898","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837854.4004781} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":82,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.039185,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3c395a90-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a","object_type":"device","rebac_allow":false,"scope_allow":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":"3c395a90-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3c395a90-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/9dc61820-8f6d-47e6-bab4-130ee58e492a/signaling 200 15ms","method":"POST","requestID":"3c395a90-49d8-11ef-9fe8-9113c2c8d024","responseTime":15,"status":200,"url":"/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3c3c19b0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":83,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:34Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F525a4957-e91e-47df-bf62-3b6de013a4c2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"569656d5-8f1a-4609-aa4b-9af19dbfb187","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837854.4173255} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":83,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.536089,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/525a4957-e91e-47df-bf62-3b6de013a4c2","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3c3c19b0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/525a4957-e91e-47df-bf62-3b6de013a4c2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3c3c19b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3c3c19b0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/525a4957-e91e-47df-bf62-3b6de013a4c2/signaling 200 11ms","method":"POST","requestID":"3c3c19b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":11,"status":200,"url":"/devices/525a4957-e91e-47df-bf62-3b6de013a4c2/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1NH0.s6xQ2TkQyzbw-U0Wm_Y3ERoSB_z66dmb4BNOpMfOdf4","level":"info","message":"auth send jwt","requestID":"9aea1adfa64c39f4d77d8daf9e2a360f"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"9aea1adfa64c39f4d77d8daf9e2a360f","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/5c4edb89-c7f1-4d72-8bcb-3c967268bc5f","requestID":"9aea1adfa64c39f4d77d8daf9e2a360f"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":84,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:34Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":84,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.761201,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5c4edb89-c7f1-4d72-8bcb-3c967268bc5f","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"9aea1adfa64c39f4d77d8daf9e2a360f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/5c4edb89-c7f1-4d72-8bcb-3c967268bc5f","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837854,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1NH0.s6xQ2TkQyzbw-U0Wm_Y3ERoSB_z66dmb4BNOpMfOdf4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9aea1adfa64c39f4d77d8daf9e2a360f","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/5c4edb89-c7f1-4d72-8bcb-3c967268bc5f","requestID":"9aea1adfa64c39f4d77d8daf9e2a360f"} gateway-1 | {"time_local":"24/Jul/2024:16:17:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/5c4edb89-c7f1-4d72-8bcb-3c967268bc5f HTTP/1.1","status": "200","body_bytes_sent":"884","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9aea1adfa64c39f4d77d8daf9e2a360f"} experiment-1 | {"level":"info","message":"GET /experiments/5c4edb89-c7f1-4d72-8bcb-3c967268bc5f 200 15ms","method":"GET","requestID":"9aea1adfa64c39f4d77d8daf9e2a360f","responseTime":15,"status":200,"url":"/experiments/5c4edb89-c7f1-4d72-8bcb-3c967268bc5f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1NH0.s6xQ2TkQyzbw-U0Wm_Y3ERoSB_z66dmb4BNOpMfOdf4","level":"info","message":"auth send jwt","requestID":"f5f2e32e425caeb7990218b9f4e02916"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f5f2e32e425caeb7990218b9f4e02916","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/5c4edb89-c7f1-4d72-8bcb-3c967268bc5f","requestID":"f5f2e32e425caeb7990218b9f4e02916"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":85,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:34Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":85,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.593399,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:34Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5c4edb89-c7f1-4d72-8bcb-3c967268bc5f","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"f5f2e32e425caeb7990218b9f4e02916","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/5c4edb89-c7f1-4d72-8bcb-3c967268bc5f","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837854,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1NH0.s6xQ2TkQyzbw-U0Wm_Y3ERoSB_z66dmb4BNOpMfOdf4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f5f2e32e425caeb7990218b9f4e02916","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c4edb89-c7f1-4d72-8bcb-3c967268bc5f"},"level":"info","message":"Attempting to finish experiment","requestID":"f5f2e32e425caeb7990218b9f4e02916"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"3c4679f0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":86,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:34Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":86,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.263331,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:34Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ac90c437-9f38-4b38-b44d-9bc22e3b5542","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3c4679f0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:http://localhost/peerconnections/ac90c437-9f38-4b38-b44d-9bc22e3b5542","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837854,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1NH0.s6xQ2TkQyzbw-U0Wm_Y3ERoSB_z66dmb4BNOpMfOdf4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3c4679f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/ac90c437-9f38-4b38-b44d-9bc22e3b5542","device":"525a4957-e91e-47df-bf62-3b6de013a4c2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"9dc61820-8f6d-47e6-bab4-130ee58e492a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"9dc61820-8f6d-47e6-bab4-130ee58e492a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"9dc61820-8f6d-47e6-bab4-130ee58e492a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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/ac90c437-9f38-4b38-b44d-9bc22e3b5542' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/ac90c437-9f38-4b38-b44d-9bc22e3b5542' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ac90c437-9f38-4b38-b44d-9bc22e3b5542","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a906eeb69458b90d6dade446e4fe911f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"a906eeb69458b90d6dade446e4fe911f","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7fd4fe6e60fbbbd76916b5aa94a4e23c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fac90c437-9f38-4b38-b44d-9bc22e3b5542': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fac90c437-9f38-4b38-b44d-9bc22e3b5542","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"56735e2c-95c4-42e2-9bca-129df7025a97","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837854.512713} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"7fd4fe6e60fbbbd76916b5aa94a4e23c","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/525a4957-e91e-47df-bf62-3b6de013a4c2"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/ac90c437-9f38-4b38-b44d-9bc22e3b5542"}}},"level":"info","message":"received a callback","requestID":"a906eeb69458b90d6dade446e4fe911f"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"df2be714-bc2a-4865-89aa-f7d0d36474c6","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837854.5133946} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/525a4957-e91e-47df-bf62-3b6de013a4c2"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/ac90c437-9f38-4b38-b44d-9bc22e3b5542"}}},"level":"info","message":"received a callback","requestID":"7fd4fe6e60fbbbd76916b5aa94a4e23c"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"3c4679f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"ac90c437-9f38-4b38-b44d-9bc22e3b5542","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"3c4679f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"DELETE /peerconnections/ac90c437-9f38-4b38-b44d-9bc22e3b5542 204 54ms","method":"DELETE","requestID":"3c4679f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":54,"status":204,"url":"/peerconnections/ac90c437-9f38-4b38-b44d-9bc22e3b5542"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c4edb89-c7f1-4d72-8bcb-3c967268bc5f"},"level":"info","message":"Successfully finished experiment","requestID":"f5f2e32e425caeb7990218b9f4e02916"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3c52fd10-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":87,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:34Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dc61820-8f6d-47e6-bab4-130ee58e492a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ca32dfa1-15ca-48f5-9c29-6f2682e8bf91","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837854.5695505} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":87,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.923659,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3c52fd10-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a","object_type":"device","rebac_allow":false,"scope_allow":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":"3c52fd10-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3c52fd10-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/9dc61820-8f6d-47e6-bab4-130ee58e492a/signaling 200 16ms","method":"POST","requestID":"3c52fd10-49d8-11ef-9fe8-9113c2c8d024","responseTime":16,"status":200,"url":"/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a/signaling"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5c4edb89-c7f1-4d72-8bcb-3c967268bc5f': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5c4edb89-c7f1-4d72-8bcb-3c967268bc5f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"1b3155d4-f8e2-4b82-9390-5d8fa893ae0c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837854.5779066} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"489cb364-6d9e-4aff-8473-85d2304b3850","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837854.578758} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"f5f2e32e425caeb7990218b9f4e02916","responseTime":23,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3c565870-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":88,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:34Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F525a4957-e91e-47df-bf62-3b6de013a4c2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"59ec8f90-8303-4c43-ade1-f14e39a011c2","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837854.592216} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":88,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.930689,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/525a4957-e91e-47df-bf62-3b6de013a4c2","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3c565870-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/525a4957-e91e-47df-bf62-3b6de013a4c2","object_type":"device","rebac_allow":false,"scope_allow":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":"3c565870-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3c565870-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/525a4957-e91e-47df-bf62-3b6de013a4c2/signaling 200 17ms","method":"POST","requestID":"3c565870-49d8-11ef-9fe8-9113c2c8d024","responseTime":17,"status":200,"url":"/devices/525a4957-e91e-47df-bf62-3b6de013a4c2/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/5c4edb89-c7f1-4d72-8bcb-3c967268bc5f","requestID":"f5f2e32e425caeb7990218b9f4e02916"} gateway-1 | {"time_local":"24/Jul/2024:16:17:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/5c4edb89-c7f1-4d72-8bcb-3c967268bc5f HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.195","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f5f2e32e425caeb7990218b9f4e02916"} gateway-1 | {"time_local":"24/Jul/2024:16:17:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2990","request_time":"4.292","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"5de25658f6f92868d5b8e1ec4f94be7e"} experiment-1 | {"level":"info","message":"DELETE /experiments/5c4edb89-c7f1-4d72-8bcb-3c967268bc5f 204 193ms","method":"DELETE","requestID":"f5f2e32e425caeb7990218b9f4e02916","responseTime":193,"status":204,"url":"/experiments/5c4edb89-c7f1-4d72-8bcb-3c967268bc5f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 144ms","method":"POST","requestID":"a906eeb69458b90d6dade446e4fe911f","responseTime":144,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:17:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.150","http_referrer":"","http_user_agent":"node-fetch","requestID":"a906eeb69458b90d6dade446e4fe911f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 143ms","method":"POST","requestID":"7fd4fe6e60fbbbd76916b5aa94a4e23c","responseTime":143,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:17:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.151","http_referrer":"","http_user_agent":"node-fetch","requestID":"7fd4fe6e60fbbbd76916b5aa94a4e23c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1NH0.s6xQ2TkQyzbw-U0Wm_Y3ERoSB_z66dmb4BNOpMfOdf4","level":"info","message":"auth send jwt","requestID":"dd8de50fa667313db2a3a1f111ed73b1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"dd8de50fa667313db2a3a1f111ed73b1","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"dd8de50fa667313db2a3a1f111ed73b1"} gateway-1 | {"time_local":"24/Jul/2024:16:17:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2501","request_time":"2.815","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"abf4a98c512fa22a0ebbd2d69e9bd515"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":89,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:34Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":89,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.975765,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:34Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"dd8de50fa667313db2a3a1f111ed73b1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837854,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1NH0.s6xQ2TkQyzbw-U0Wm_Y3ERoSB_z66dmb4BNOpMfOdf4"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"dd8de50fa667313db2a3a1f111ed73b1","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/9dc61820-8f6d-47e6-bab4-130ee58e492a' 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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"fe90378f-5433-41d7-aeb9-febd1ea418a9","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837854.6859891} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"dd8de50fa667313db2a3a1f111ed73b1","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/525a4957-e91e-47df-bf62-3b6de013a4c2' 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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ecfa929e-d106-4f66-89b8-d6a76ef4f1eb","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837854.6923704} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"dd8de50fa667313db2a3a1f111ed73b1","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"3f446827-5893-498e-9769-5eb6e3d23f2c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837854.7032375} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"551dcdbf-3d54-4292-83f0-bbf6b1b140dc","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837854.7037039} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"dd8de50fa667313db2a3a1f111ed73b1","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:34.703215850Z"}]},"request_id":"cfc3d925-557d-40fd-a8ec-63b21cd67afd","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837854.7089489} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"dd8de50fa667313db2a3a1f111ed73b1","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"dd8de50fa667313db2a3a1f111ed73b1"} gateway-1 | {"time_local":"24/Jul/2024:16:17:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.056","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dd8de50fa667313db2a3a1f111ed73b1"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"dd8de50fa667313db2a3a1f111ed73b1","responseTime":50,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1NH0.s6xQ2TkQyzbw-U0Wm_Y3ERoSB_z66dmb4BNOpMfOdf4","level":"info","message":"auth send jwt","requestID":"e67d3f05f6e784b5172e437412a0ea2b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e67d3f05f6e784b5172e437412a0ea2b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e67d3f05f6e784b5172e437412a0ea2b"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":90,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:34Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":90,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.730491,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:34Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"e67d3f05f6e784b5172e437412a0ea2b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837854,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1NH0.s6xQ2TkQyzbw-U0Wm_Y3ERoSB_z66dmb4BNOpMfOdf4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e67d3f05f6e784b5172e437412a0ea2b","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdef8d12b-2213-4634-b7d3-4f055a08fa55","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"269f9e8f-bed2-4e30-826b-01aedb3fba9e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837854.740903} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e67d3f05f6e784b5172e437412a0ea2b","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2c9f7283-7203-44bb-9ddc-ed160c39a93f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837854.7462122} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e67d3f05f6e784b5172e437412a0ea2b","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdef8d12b-2213-4634-b7d3-4f055a08fa55","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"2769fe76-3e3b-4285-9a5c-80a29c98de94","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837854.756735} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c0535ed5-8c76-403f-9645-8dff545b1d4a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837854.7568502} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"e67d3f05f6e784b5172e437412a0ea2b","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdef8d12b-2213-4634-b7d3-4f055a08fa55","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdef8d12b-2213-4634-b7d3-4f055a08fa55","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:34.756720704Z"}]},"request_id":"e49f5302-92e0-4fc9-b6d0-9497b1357789","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837854.7623577} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e67d3f05f6e784b5172e437412a0ea2b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e67d3f05f6e784b5172e437412a0ea2b"} gateway-1 | {"time_local":"24/Jul/2024:16:17:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e67d3f05f6e784b5172e437412a0ea2b"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"e67d3f05f6e784b5172e437412a0ea2b","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1NX0.8GK7Cwi8WWR5wWCZheWCacv4Spo_NBEpK_pRj60MGo0","level":"info","message":"auth send jwt","requestID":"0ae5ea33511c65c048cb1b19af10fb3f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0ae5ea33511c65c048cb1b19af10fb3f","responseTime":4,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1NX0.8GK7Cwi8WWR5wWCZheWCacv4Spo_NBEpK_pRj60MGo0","level":"info","message":"auth send jwt","requestID":"a7beb1852a2e931ec1123daf99f2104b"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"0ae5ea33511c65c048cb1b19af10fb3f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a7beb1852a2e931ec1123daf99f2104b","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"a7beb1852a2e931ec1123daf99f2104b"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":91,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:35Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":91,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.689645,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:35Z"} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Received request.","req_id":92,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:35Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"0ae5ea33511c65c048cb1b19af10fb3f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837855,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1NX0.8GK7Cwi8WWR5wWCZheWCacv4Spo_NBEpK_pRj60MGo0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0ae5ea33511c65c048cb1b19af10fb3f","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Sent response.","req_id":92,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.851583,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:35Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/def8d12b-2213-4634-b7d3-4f055a08fa55","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"a7beb1852a2e931ec1123daf99f2104b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/def8d12b-2213-4634-b7d3-4f055a08fa55","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837855,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1NX0.8GK7Cwi8WWR5wWCZheWCacv4Spo_NBEpK_pRj60MGo0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a7beb1852a2e931ec1123daf99f2104b","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:34.703215850Z"}]},"request_id":"566f423c-a21a-4230-b991-309eb904d836","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837855.2822337} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0ae5ea33511c65c048cb1b19af10fb3f","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdef8d12b-2213-4634-b7d3-4f055a08fa55","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdef8d12b-2213-4634-b7d3-4f055a08fa55","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:34.756720704Z"}]},"request_id":"8699955b-ed72-4369-a269-8d2082dc7217","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837855.283267} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a7beb1852a2e931ec1123daf99f2104b","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"63f3dca0-3d3e-48e8-af02-f0035e03d9cb","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837855.2880366} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"0ae5ea33511c65c048cb1b19af10fb3f","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3ee4d7a6-96fb-4e0c-8946-958261581960","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837855.2897427} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"a7beb1852a2e931ec1123daf99f2104b","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdef8d12b-2213-4634-b7d3-4f055a08fa55","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdef8d12b-2213-4634-b7d3-4f055a08fa55","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:34.756720704Z"}]},"request_id":"3265f6e4-fcbd-4404-b6a1-5052fdc8da06","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837855.2945914} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a7beb1852a2e931ec1123daf99f2104b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"a7beb1852a2e931ec1123daf99f2104b"} gateway-1 | {"time_local":"24/Jul/2024:16:17:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/def8d12b-2213-4634-b7d3-4f055a08fa55 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.035","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"a7beb1852a2e931ec1123daf99f2104b"} device-1 | {"level":"info","message":"PATCH /devices/def8d12b-2213-4634-b7d3-4f055a08fa55 200 27ms","method":"PATCH","requestID":"a7beb1852a2e931ec1123daf99f2104b","responseTime":27,"status":200,"url":"/devices/def8d12b-2213-4634-b7d3-4f055a08fa55"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1NX0.8GK7Cwi8WWR5wWCZheWCacv4Spo_NBEpK_pRj60MGo0","level":"info","message":"auth send jwt","requestID":"e431e7d03c1e30c721214ab5aae92803"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e431e7d03c1e30c721214ab5aae92803","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e431e7d03c1e30c721214ab5aae92803"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:34.703215850Z"}]},"request_id":"a4045e2b-35b5-4cf4-abe7-fb121cf6a5c7","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837855.3036723} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0ae5ea33511c65c048cb1b19af10fb3f","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":93,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:35Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":93,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.965603,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:35Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"0ae5ea33511c65c048cb1b19af10fb3f"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/def8d12b-2213-4634-b7d3-4f055a08fa55","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"e431e7d03c1e30c721214ab5aae92803","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/def8d12b-2213-4634-b7d3-4f055a08fa55","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837855,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1NX0.8GK7Cwi8WWR5wWCZheWCacv4Spo_NBEpK_pRj60MGo0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e431e7d03c1e30c721214ab5aae92803","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"24/Jul/2024:16:17:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.046","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"0ae5ea33511c65c048cb1b19af10fb3f"} device-1 | {"level":"info","message":"PATCH /devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb 200 39ms","method":"PATCH","requestID":"0ae5ea33511c65c048cb1b19af10fb3f","responseTime":39,"status":200,"url":"/devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1NX0.8GK7Cwi8WWR5wWCZheWCacv4Spo_NBEpK_pRj60MGo0","level":"info","message":"auth send jwt","requestID":"efa085b140110bfcc305084125d163af"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"efa085b140110bfcc305084125d163af","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"efa085b140110bfcc305084125d163af"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":94,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:35Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":94,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.734508,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:35Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"efa085b140110bfcc305084125d163af","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837855,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1NX0.8GK7Cwi8WWR5wWCZheWCacv4Spo_NBEpK_pRj60MGo0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e431e7d03c1e30c721214ab5aae92803"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"efa085b140110bfcc305084125d163af","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"24/Jul/2024:16:17:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/def8d12b-2213-4634-b7d3-4f055a08fa55/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.020","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"e431e7d03c1e30c721214ab5aae92803"} device-1 | {"level":"info","message":"POST /devices/def8d12b-2213-4634-b7d3-4f055a08fa55/websocket 200 17ms","method":"POST","requestID":"e431e7d03c1e30c721214ab5aae92803","responseTime":17,"status":200,"url":"/devices/def8d12b-2213-4634-b7d3-4f055a08fa55/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"efa085b140110bfcc305084125d163af"} gateway-1 | {"time_local":"24/Jul/2024:16:17:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.022","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"efa085b140110bfcc305084125d163af"} device-1 | {"level":"info","message":"POST /devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb/websocket 200 18ms","method":"POST","requestID":"efa085b140110bfcc305084125d163af","responseTime":18,"status":200,"url":"/devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/def8d12b-2213-4634-b7d3-4f055a08fa55' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1NX0.8GK7Cwi8WWR5wWCZheWCacv4Spo_NBEpK_pRj60MGo0","level":"info","message":"auth send jwt","requestID":"38639362ec127c0c3623e3bbce157bfd"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"38639362ec127c0c3623e3bbce157bfd","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"38639362ec127c0c3623e3bbce157bfd"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":95,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:35Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":95,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.080379,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"38639362ec127c0c3623e3bbce157bfd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837855,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1NX0.8GK7Cwi8WWR5wWCZheWCacv4Spo_NBEpK_pRj60MGo0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"38639362ec127c0c3623e3bbce157bfd","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:34.703215850Z"}]},"request_id":"3b24d96e-8a21-4ee7-b722-5289203f065a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837855.3668423} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"38639362ec127c0c3623e3bbce157bfd","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"38639362ec127c0c3623e3bbce157bfd"} device-1 | {"level":"info","message":"GET /devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb? 200 13ms","method":"GET","requestID":"38639362ec127c0c3623e3bbce157bfd","responseTime":13,"status":200,"url":"/devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb?"} gateway-1 | {"time_local":"24/Jul/2024:16:17:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"38639362ec127c0c3623e3bbce157bfd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1NX0.8GK7Cwi8WWR5wWCZheWCacv4Spo_NBEpK_pRj60MGo0","level":"info","message":"auth send jwt","requestID":"cbd6feaed624bee4f33fddb80dbb406d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"cbd6feaed624bee4f33fddb80dbb406d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cbd6feaed624bee4f33fddb80dbb406d"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":96,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:35Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":96,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.667658,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/def8d12b-2213-4634-b7d3-4f055a08fa55","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"cbd6feaed624bee4f33fddb80dbb406d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/def8d12b-2213-4634-b7d3-4f055a08fa55","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837855,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1NX0.8GK7Cwi8WWR5wWCZheWCacv4Spo_NBEpK_pRj60MGo0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"cbd6feaed624bee4f33fddb80dbb406d","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdef8d12b-2213-4634-b7d3-4f055a08fa55","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdef8d12b-2213-4634-b7d3-4f055a08fa55","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:34.756720704Z"}]},"request_id":"33961c28-c1ad-443f-8819-17c85073d255","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837855.3859756} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"cbd6feaed624bee4f33fddb80dbb406d","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cbd6feaed624bee4f33fddb80dbb406d"} device-1 | {"level":"info","message":"GET /devices/def8d12b-2213-4634-b7d3-4f055a08fa55? 200 13ms","method":"GET","requestID":"cbd6feaed624bee4f33fddb80dbb406d","responseTime":13,"status":200,"url":"/devices/def8d12b-2213-4634-b7d3-4f055a08fa55?"} gateway-1 | {"time_local":"24/Jul/2024:16:17:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/def8d12b-2213-4634-b7d3-4f055a08fa55? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cbd6feaed624bee4f33fddb80dbb406d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1NX0.8GK7Cwi8WWR5wWCZheWCacv4Spo_NBEpK_pRj60MGo0","level":"info","message":"auth send jwt","requestID":"c7a90564d5edb67250b12e730d29f766"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c7a90564d5edb67250b12e730d29f766","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"c7a90564d5edb67250b12e730d29f766"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":97,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:35Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":97,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.162613,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:35Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"c7a90564d5edb67250b12e730d29f766","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837855,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1NX0.8GK7Cwi8WWR5wWCZheWCacv4Spo_NBEpK_pRj60MGo0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c7a90564d5edb67250b12e730d29f766","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fa357dfc-d4b8-4239-ad11-c1807ac1fb9f"},"level":"info","message":"Attempting to run experiment","requestID":"c7a90564d5edb67250b12e730d29f766"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fa357dfc-d4b8-4239-ad11-c1807ac1fb9f"},"level":"info","message":"Attempting to book experiment","requestID":"c7a90564d5edb67250b12e730d29f766"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fa357dfc-d4b8-4239-ad11-c1807ac1fb9f"},"level":"info","message":"Successfully booked experiment","requestID":"c7a90564d5edb67250b12e730d29f766"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3cda5580-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3cdaa3a0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":98,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:35Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":98,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.79227,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:35Z"} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Received request.","req_id":99,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3cda5580-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837855,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1NX0.8GK7Cwi8WWR5wWCZheWCacv4Spo_NBEpK_pRj60MGo0"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"3cda5580-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Sent response.","req_id":99,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.307303,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/def8d12b-2213-4634-b7d3-4f055a08fa55","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3cdaa3a0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/def8d12b-2213-4634-b7d3-4f055a08fa55","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837855,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1NX0.8GK7Cwi8WWR5wWCZheWCacv4Spo_NBEpK_pRj60MGo0"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"3cdaa3a0-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:34.703215850Z"}]},"request_id":"c7e8b398-7678-4053-8775-054154ae64b1","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837855.4662738} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"3cda5580-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdef8d12b-2213-4634-b7d3-4f055a08fa55","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdef8d12b-2213-4634-b7d3-4f055a08fa55","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:34.756720704Z"}]},"request_id":"ecc186e2-7b48-400d-87b3-d0c9190be4cb","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837855.4683983} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"3cdaa3a0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3cda5580-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb? 200 25ms","method":"GET","requestID":"3cda5580-49d8-11ef-9fe8-9113c2c8d024","responseTime":25,"status":200,"url":"/devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3cdaa3a0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/def8d12b-2213-4634-b7d3-4f055a08fa55? 200 24ms","method":"GET","requestID":"3cdaa3a0-49d8-11ef-9fe8-9113c2c8d024","responseTime":24,"status":200,"url":"/devices/def8d12b-2213-4634-b7d3-4f055a08fa55?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fa357dfc-d4b8-4239-ad11-c1807ac1fb9f"},"level":"info","message":"Setting up experiment","requestID":"c7a90564d5edb67250b12e730d29f766"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fa357dfc-d4b8-4239-ad11-c1807ac1fb9f"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"c7a90564d5edb67250b12e730d29f766"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fa357dfc-d4b8-4239-ad11-c1807ac1fb9f"},"level":"info","message":"Successfully locked booking for experiment","requestID":"c7a90564d5edb67250b12e730d29f766"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fa357dfc-d4b8-4239-ad11-c1807ac1fb9f"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"c7a90564d5edb67250b12e730d29f766"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fa357dfc-d4b8-4239-ad11-c1807ac1fb9f"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"c7a90564d5edb67250b12e730d29f766"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fa357dfc-d4b8-4239-ad11-c1807ac1fb9f"},"level":"info","message":"Attempting to update booking for experiment","requestID":"c7a90564d5edb67250b12e730d29f766"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fa357dfc-d4b8-4239-ad11-c1807ac1fb9f"},"level":"info","message":"Successfully updated booking for experiment","requestID":"c7a90564d5edb67250b12e730d29f766"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fa357dfc-d4b8-4239-ad11-c1807ac1fb9f"},"level":"info","message":"Successfully set up experiment","requestID":"c7a90564d5edb67250b12e730d29f766"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3ce7c300-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3ce81120-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3ce83830-49d8-11ef-9fe8-9113c2c8d024"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fa357dfc-d4b8-4239-ad11-c1807ac1fb9f"},"level":"info","message":"Successfully running experiment","requestID":"c7a90564d5edb67250b12e730d29f766"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":100,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:35Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":100,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.245409,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:35Z"} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Received request.","req_id":101,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3ce7c300-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837855,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1NX0.8GK7Cwi8WWR5wWCZheWCacv4Spo_NBEpK_pRj60MGo0"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"3ce7c300-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Sent response.","req_id":101,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.481103,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/def8d12b-2213-4634-b7d3-4f055a08fa55","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3ce81120-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/def8d12b-2213-4634-b7d3-4f055a08fa55","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837855,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1NX0.8GK7Cwi8WWR5wWCZheWCacv4Spo_NBEpK_pRj60MGo0"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"3ce81120-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:34.703215850Z"}]},"request_id":"bfdccf97-de79-4101-bd1d-98c61fe9abbd","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837855.5573528} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdef8d12b-2213-4634-b7d3-4f055a08fa55","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdef8d12b-2213-4634-b7d3-4f055a08fa55","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:34.756720704Z"}]},"request_id":"358448ad-0808-4537-950d-23352a91034f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837855.558597} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"3ce7c300-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"3ce81120-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1a2f0616-3830-4b40-abb6-9bf7447e9427","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837855.5617895} authorization-1 | {"client_addr":"127.0.0.1:40460","level":"info","msg":"Received request.","req_id":102,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:35Z"} authorization-1 | {"client_addr":"127.0.0.1:40460","level":"info","msg":"Sent response.","req_id":102,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.441853,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3ce83830-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 20ms","method":"POST","requestID":"3ce83830-49d8-11ef-9fe8-9113c2c8d024","responseTime":20,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3ce7c300-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb? 200 31ms","method":"GET","requestID":"3ce7c300-49d8-11ef-9fe8-9113c2c8d024","responseTime":31,"status":200,"url":"/devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3ce81120-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffa357dfc-d4b8-4239-ad11-c1807ac1fb9f#owner@http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffa357dfc-d4b8-4239-ad11-c1807ac1fb9f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"24d56523-ee65-4faf-891f-7bb2c33c9fd2","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837855.568535} device-1 | {"level":"info","message":"GET /devices/def8d12b-2213-4634-b7d3-4f055a08fa55? 200 31ms","method":"GET","requestID":"3ce81120-49d8-11ef-9fe8-9113c2c8d024","responseTime":31,"status":200,"url":"/devices/def8d12b-2213-4634-b7d3-4f055a08fa55?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"96fc4eb3-3c2c-49f1-9948-d806b7c2529d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837855.568874} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"c7a90564d5edb67250b12e730d29f766","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3ced6850-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3ce83830-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb/signaling 200 36ms","method":"POST","requestID":"3ce83830-49d8-11ef-9fe8-9113c2c8d024","responseTime":36,"status":200,"url":"/devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb/signaling"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":103,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:35Z"} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Received request.","req_id":104,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:35Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/fa357dfc-d4b8-4239-ad11-c1807ac1fb9f","user":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"c7a90564d5edb67250b12e730d29f766"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3cee52b0-49d8-11ef-9fe8-9113c2c8d024"} experiment-1 | {"level":"info","message":"POST /experiments? 201 184ms","method":"POST","requestID":"c7a90564d5edb67250b12e730d29f766","responseTime":184,"status":201,"url":"/experiments?"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d415a763-d58a-4124-bfda-5ec6d5293a5f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837855.5847442} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdef8d12b-2213-4634-b7d3-4f055a08fa55","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"657c2ca4-0f01-4afd-a717-ab7df3f75662","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837855.585072} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":103,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":8.501188,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3ced6850-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","object_type":"device","rebac_allow":false,"scope_allow":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":"3ced6850-49d8-11ef-9fe8-9113c2c8d024","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Sent response.","req_id":104,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.589057,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:35Z"} gateway-1 | {"time_local":"24/Jul/2024:16:17:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"815","request_time":"0.193","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c7a90564d5edb67250b12e730d29f766"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/def8d12b-2213-4634-b7d3-4f055a08fa55","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3cee52b0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/def8d12b-2213-4634-b7d3-4f055a08fa55","object_type":"device","rebac_allow":false,"scope_allow":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":"3cee52b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3ced6850-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb/signaling 200 20ms","method":"POST","requestID":"3ced6850-49d8-11ef-9fe8-9113c2c8d024","responseTime":20,"status":200,"url":"/devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3cee52b0-49d8-11ef-9fe8-9113c2c8d024"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1NX0.8GK7Cwi8WWR5wWCZheWCacv4Spo_NBEpK_pRj60MGo0","level":"info","message":"auth send jwt","requestID":"c33941741b34c075debb4a3b4c972e38"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c33941741b34c075debb4a3b4c972e38","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"POST /devices/def8d12b-2213-4634-b7d3-4f055a08fa55/signaling 200 15ms","method":"POST","requestID":"3cee52b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":15,"status":200,"url":"/devices/def8d12b-2213-4634-b7d3-4f055a08fa55/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c33941741b34c075debb4a3b4c972e38"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3cf138e0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":105,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:35Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":105,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.864931,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:35Z"} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Received request.","req_id":106,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"c33941741b34c075debb4a3b4c972e38","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837855,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1NX0.8GK7Cwi8WWR5wWCZheWCacv4Spo_NBEpK_pRj60MGo0"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"c33941741b34c075debb4a3b4c972e38","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:34.703215850Z"}]},"request_id":"87f8f8d0-8894-48ae-b52d-fc2e600feb5a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837855.6100912} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c33941741b34c075debb4a3b4c972e38","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c33941741b34c075debb4a3b4c972e38"} gateway-1 | {"time_local":"24/Jul/2024:16:17:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c33941741b34c075debb4a3b4c972e38"} device-1 | {"level":"info","message":"GET /devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb? 200 18ms","method":"GET","requestID":"c33941741b34c075debb4a3b4c972e38","responseTime":18,"status":200,"url":"/devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1NX0.8GK7Cwi8WWR5wWCZheWCacv4Spo_NBEpK_pRj60MGo0","level":"info","message":"auth send jwt","requestID":"69500b74c3b9f8a1dcdb4fe15a40e210"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdef8d12b-2213-4634-b7d3-4f055a08fa55","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ca9dbfea-8f57-454d-aa90-6316847b7c79","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837855.620746} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"69500b74c3b9f8a1dcdb4fe15a40e210","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"69500b74c3b9f8a1dcdb4fe15a40e210"} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Sent response.","req_id":106,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":17.858369,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/def8d12b-2213-4634-b7d3-4f055a08fa55","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3cf138e0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/def8d12b-2213-4634-b7d3-4f055a08fa55","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 23ms","method":"POST","requestID":"3cf138e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":23,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":107,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:35Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":107,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.936977,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/def8d12b-2213-4634-b7d3-4f055a08fa55","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"69500b74c3b9f8a1dcdb4fe15a40e210","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/def8d12b-2213-4634-b7d3-4f055a08fa55","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837855,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1NX0.8GK7Cwi8WWR5wWCZheWCacv4Spo_NBEpK_pRj60MGo0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"69500b74c3b9f8a1dcdb4fe15a40e210","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3cf138e0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/def8d12b-2213-4634-b7d3-4f055a08fa55/signaling 200 36ms","method":"POST","requestID":"3cf138e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":36,"status":200,"url":"/devices/def8d12b-2213-4634-b7d3-4f055a08fa55/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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdef8d12b-2213-4634-b7d3-4f055a08fa55","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdef8d12b-2213-4634-b7d3-4f055a08fa55","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:34.756720704Z"}]},"request_id":"705618f9-f8d8-4a3d-9a7d-edc766078b8d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837855.633444} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"69500b74c3b9f8a1dcdb4fe15a40e210","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"3cf75360-49d8-11ef-9fe8-9113c2c8d024"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fa357dfc-d4b8-4239-ad11-c1807ac1fb9f"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"c7a90564d5edb67250b12e730d29f766"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fa357dfc-d4b8-4239-ad11-c1807ac1fb9f"},"level":"info","message":"Building connection plan","requestID":"c7a90564d5edb67250b12e730d29f766"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"685713de-5f54-4920-889d-50b3a94e4ebb"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"f29ac8a2-1533-4b39-9ffd-f55656377dc4"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"7e9518ea-0c26-49a5-9caa-878e1a734592"}]},"level":"info","message":"Built pairwise service configurations","requestID":"c7a90564d5edb67250b12e730d29f766"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/def8d12b-2213-4634-b7d3-4f055a08fa55"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"c7a90564d5edb67250b12e730d29f766"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"69500b74c3b9f8a1dcdb4fe15a40e210"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":108,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:35Z"} gateway-1 | {"time_local":"24/Jul/2024:16:17:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/def8d12b-2213-4634-b7d3-4f055a08fa55? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"69500b74c3b9f8a1dcdb4fe15a40e210"} device-1 | {"level":"info","message":"GET /devices/def8d12b-2213-4634-b7d3-4f055a08fa55? 200 22ms","method":"GET","requestID":"69500b74c3b9f8a1dcdb4fe15a40e210","responseTime":22,"status":200,"url":"/devices/def8d12b-2213-4634-b7d3-4f055a08fa55?"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":108,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.70149,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:35Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3cf75360-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837855,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1NX0.8GK7Cwi8WWR5wWCZheWCacv4Spo_NBEpK_pRj60MGo0"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"3cf75360-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","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%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"50d30902-0423-423a-993f-d48cc1aecfa5","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837855.6565177} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ec6b5d38-e3ac-483a-ae66-c71f73137004","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837855.6566849} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"3cf75360-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"3cf75360-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"3cf75360-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/439eda53-c9cb-4ecd-bd9c-960ae77975df'","requestID":"3cf75360-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/439eda53-c9cb-4ecd-bd9c-960ae77975df'","requestID":"3cf75360-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"3cf75360-49d8-11ef-9fe8-9113c2c8d024"} 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":"3cf75360-49d8-11ef-9fe8-9113c2c8d024","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":"3cf75360-49d8-11ef-9fe8-9113c2c8d024"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fa357dfc-d4b8-4239-ad11-c1807ac1fb9f"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"c7a90564d5edb67250b12e730d29f766"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3d013e70-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":109,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:35Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f6638849-e1e9-4519-beb3-4fcbb8cbad9e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837855.7085416} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":109,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.393294,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3d013e70-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3d013e70-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3d013e70-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb/signaling 200 10ms","method":"POST","requestID":"3d013e70-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3d031330-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":110,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:35Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdef8d12b-2213-4634-b7d3-4f055a08fa55","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b1580712-5e79-423d-bcb7-29f7861dbf93","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837855.719441} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":110,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.36138,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/def8d12b-2213-4634-b7d3-4f055a08fa55","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3d031330-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/def8d12b-2213-4634-b7d3-4f055a08fa55","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3d031330-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3d031330-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/def8d12b-2213-4634-b7d3-4f055a08fa55/signaling 200 8ms","method":"POST","requestID":"3d031330-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/devices/def8d12b-2213-4634-b7d3-4f055a08fa55/signaling"} device-1 | {"device":"def8d12b-2213-4634-b7d3-4f055a08fa55","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"439eda53-c9cb-4ecd-bd9c-960ae77975df","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"439eda53-c9cb-4ecd-bd9c-960ae77975df","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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/439eda53-c9cb-4ecd-bd9c-960ae77975df' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"439eda53-c9cb-4ecd-bd9c-960ae77975df","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e761357bac6573fcf577ee5307e801b6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e761357bac6573fcf577ee5307e801b6","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/def8d12b-2213-4634-b7d3-4f055a08fa55"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/439eda53-c9cb-4ecd-bd9c-960ae77975df"}}},"level":"info","message":"received a callback","requestID":"e761357bac6573fcf577ee5307e801b6"} device-1 | {"device":"def8d12b-2213-4634-b7d3-4f055a08fa55","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"def8d12b-2213-4634-b7d3-4f055a08fa55","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"def8d12b-2213-4634-b7d3-4f055a08fa55","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.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":"e761357bac6573fcf577ee5307e801b6","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:17: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.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"e761357bac6573fcf577ee5307e801b6"} device-1 | {"device":"4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"def8d12b-2213-4634-b7d3-4f055a08fa55","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"439eda53-c9cb-4ecd-bd9c-960ae77975df","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"def8d12b-2213-4634-b7d3-4f055a08fa55","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"439eda53-c9cb-4ecd-bd9c-960ae77975df","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/439eda53-c9cb-4ecd-bd9c-960ae77975df' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"439eda53-c9cb-4ecd-bd9c-960ae77975df","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8d7708ee27a7638c8139b3cdfccc3d54","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"8d7708ee27a7638c8139b3cdfccc3d54","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/def8d12b-2213-4634-b7d3-4f055a08fa55"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/439eda53-c9cb-4ecd-bd9c-960ae77975df"}}},"level":"info","message":"received a callback","requestID":"8d7708ee27a7638c8139b3cdfccc3d54"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"3e429810-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":111,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:37Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F439eda53-c9cb-4ecd-bd9c-960ae77975df","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f2730246-178e-40b3-89a4-7de8cd1df7a6","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837857.816145} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":111,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":4.118043,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/439eda53-c9cb-4ecd-bd9c-960ae77975df","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3e429810-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/439eda53-c9cb-4ecd-bd9c-960ae77975df","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":"3e429810-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"3e429810-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /peerconnections/439eda53-c9cb-4ecd-bd9c-960ae77975df 200 14ms","method":"GET","requestID":"3e429810-49d8-11ef-9fe8-9113c2c8d024","responseTime":14,"status":200,"url":"/peerconnections/439eda53-c9cb-4ecd-bd9c-960ae77975df"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 56ms","method":"POST","requestID":"8d7708ee27a7638c8139b3cdfccc3d54","responseTime":56,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:17: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.060","http_referrer":"","http_user_agent":"node-fetch","requestID":"8d7708ee27a7638c8139b3cdfccc3d54"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3e4975e0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":112,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:37Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7a1e0c7c-c987-4ce6-9d88-308cd0a192fa","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837857.8621035} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":112,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.037511,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3e4975e0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","object_type":"device","rebac_allow":false,"scope_allow":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":"3e4975e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3e4975e0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb/signaling 200 16ms","method":"POST","requestID":"3e4975e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":16,"status":200,"url":"/devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3e4c5c10-49d8-11ef-9fe8-9113c2c8d024"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1N30.YhmqYZ8BErNdsp-RkPI7p9Xa1H-akHSFmDVb2ng48oc","level":"info","message":"auth send jwt","requestID":"dc18dccb5850cd67b943087073283e93"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"dc18dccb5850cd67b943087073283e93","responseTime":6,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":113,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:37Z"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/fa357dfc-d4b8-4239-ad11-c1807ac1fb9f","requestID":"dc18dccb5850cd67b943087073283e93"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdef8d12b-2213-4634-b7d3-4f055a08fa55","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"37006484-348f-495a-8c03-fc6aad245e56","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837857.8809388} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":113,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.967985,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:37Z"} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Received request.","req_id":114,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/def8d12b-2213-4634-b7d3-4f055a08fa55","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3e4c5c10-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/def8d12b-2213-4634-b7d3-4f055a08fa55","object_type":"device","rebac_allow":false,"scope_allow":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":"3e4c5c10-49d8-11ef-9fe8-9113c2c8d024","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Sent response.","req_id":114,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.245484,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/fa357dfc-d4b8-4239-ad11-c1807ac1fb9f","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"dc18dccb5850cd67b943087073283e93","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/fa357dfc-d4b8-4239-ad11-c1807ac1fb9f","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837857,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1N30.YhmqYZ8BErNdsp-RkPI7p9Xa1H-akHSFmDVb2ng48oc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"dc18dccb5850cd67b943087073283e93","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3e4c5c10-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/def8d12b-2213-4634-b7d3-4f055a08fa55/signaling 200 18ms","method":"POST","requestID":"3e4c5c10-49d8-11ef-9fe8-9113c2c8d024","responseTime":18,"status":200,"url":"/devices/def8d12b-2213-4634-b7d3-4f055a08fa55/signaling"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/fa357dfc-d4b8-4239-ad11-c1807ac1fb9f","requestID":"dc18dccb5850cd67b943087073283e93"} gateway-1 | {"time_local":"24/Jul/2024:16:17:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/fa357dfc-d4b8-4239-ad11-c1807ac1fb9f HTTP/1.1","status": "200","body_bytes_sent":"888","request_time":"0.030","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dc18dccb5850cd67b943087073283e93"} experiment-1 | {"level":"info","message":"GET /experiments/fa357dfc-d4b8-4239-ad11-c1807ac1fb9f 200 23ms","method":"GET","requestID":"dc18dccb5850cd67b943087073283e93","responseTime":23,"status":200,"url":"/experiments/fa357dfc-d4b8-4239-ad11-c1807ac1fb9f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1N30.YhmqYZ8BErNdsp-RkPI7p9Xa1H-akHSFmDVb2ng48oc","level":"info","message":"auth send jwt","requestID":"0cbd879df7b291def6544af3b7703053"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0cbd879df7b291def6544af3b7703053","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/fa357dfc-d4b8-4239-ad11-c1807ac1fb9f","requestID":"0cbd879df7b291def6544af3b7703053"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":115,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:37Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":115,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.749749,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:37Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/fa357dfc-d4b8-4239-ad11-c1807ac1fb9f","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"0cbd879df7b291def6544af3b7703053","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/fa357dfc-d4b8-4239-ad11-c1807ac1fb9f","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837857,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1N30.YhmqYZ8BErNdsp-RkPI7p9Xa1H-akHSFmDVb2ng48oc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0cbd879df7b291def6544af3b7703053","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fa357dfc-d4b8-4239-ad11-c1807ac1fb9f"},"level":"info","message":"Attempting to finish experiment","requestID":"0cbd879df7b291def6544af3b7703053"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"3e5535b0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":116,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:37Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":116,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.162239,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:37Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/439eda53-c9cb-4ecd-bd9c-960ae77975df","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3e5535b0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:http://localhost/peerconnections/439eda53-c9cb-4ecd-bd9c-960ae77975df","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837857,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1N30.YhmqYZ8BErNdsp-RkPI7p9Xa1H-akHSFmDVb2ng48oc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3e5535b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"device":"4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"def8d12b-2213-4634-b7d3-4f055a08fa55","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"def8d12b-2213-4634-b7d3-4f055a08fa55","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"def8d12b-2213-4634-b7d3-4f055a08fa55","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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/439eda53-c9cb-4ecd-bd9c-960ae77975df' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/439eda53-c9cb-4ecd-bd9c-960ae77975df' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"439eda53-c9cb-4ecd-bd9c-960ae77975df","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F439eda53-c9cb-4ecd-bd9c-960ae77975df': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F439eda53-c9cb-4ecd-bd9c-960ae77975df","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"aefd5f09-56fd-41d4-bf82-5e2434d3c2ff","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837857.959955} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"64609a0b-e377-4853-a764-39ed257e796f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837857.9603508} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"38204ded61faadc3460d75b2c893dc01","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"38204ded61faadc3460d75b2c893dc01","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"98e618309c9a27a994a0c191c16b218e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"98e618309c9a27a994a0c191c16b218e","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"3e5535b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":14,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/def8d12b-2213-4634-b7d3-4f055a08fa55"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/439eda53-c9cb-4ecd-bd9c-960ae77975df"}}},"level":"info","message":"received a callback","requestID":"38204ded61faadc3460d75b2c893dc01"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/def8d12b-2213-4634-b7d3-4f055a08fa55"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/439eda53-c9cb-4ecd-bd9c-960ae77975df"}}},"level":"info","message":"received a callback","requestID":"98e618309c9a27a994a0c191c16b218e"} device-1 | {"data":{"peerconnection":"439eda53-c9cb-4ecd-bd9c-960ae77975df","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"3e5535b0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"DELETE /peerconnections/439eda53-c9cb-4ecd-bd9c-960ae77975df 204 50ms","method":"DELETE","requestID":"3e5535b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":50,"status":204,"url":"/peerconnections/439eda53-c9cb-4ecd-bd9c-960ae77975df"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fa357dfc-d4b8-4239-ad11-c1807ac1fb9f"},"level":"info","message":"Successfully finished experiment","requestID":"0cbd879df7b291def6544af3b7703053"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3e60f580-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":117,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:38Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9c89dd5c-f8a4-4ea5-b258-d60ce996e79a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.0168421} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":117,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.636494,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3e60f580-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb","object_type":"device","rebac_allow":false,"scope_allow":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":"3e60f580-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3e60f580-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffa357dfc-d4b8-4239-ad11-c1807ac1fb9f': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffa357dfc-d4b8-4239-ad11-c1807ac1fb9f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"4ffcbb47-7905-4728-a30f-7708e3f9021c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.0231507} device-1 | {"level":"info","message":"POST /devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb/signaling 200 15ms","method":"POST","requestID":"3e60f580-49d8-11ef-9fe8-9113c2c8d024","responseTime":15,"status":200,"url":"/devices/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb/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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"766172e7-2329-46b9-8bf1-183f9421d7df","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.0236726} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"0cbd879df7b291def6544af3b7703053","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3e63dbb0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":118,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:38Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdef8d12b-2213-4634-b7d3-4f055a08fa55","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f0cda34e-8ef9-41b1-a8a9-c92289da8106","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.034855} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":118,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.583047,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/def8d12b-2213-4634-b7d3-4f055a08fa55","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3e63dbb0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/def8d12b-2213-4634-b7d3-4f055a08fa55","object_type":"device","rebac_allow":false,"scope_allow":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":"3e63dbb0-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3e63dbb0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/def8d12b-2213-4634-b7d3-4f055a08fa55/signaling 200 17ms","method":"POST","requestID":"3e63dbb0-49d8-11ef-9fe8-9113c2c8d024","responseTime":17,"status":200,"url":"/devices/def8d12b-2213-4634-b7d3-4f055a08fa55/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/fa357dfc-d4b8-4239-ad11-c1807ac1fb9f","requestID":"0cbd879df7b291def6544af3b7703053"} gateway-1 | {"time_local":"24/Jul/2024:16:17:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/fa357dfc-d4b8-4239-ad11-c1807ac1fb9f HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.195","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0cbd879df7b291def6544af3b7703053"} gateway-1 | {"time_local":"24/Jul/2024:16:17:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2506","request_time":"2.781","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"9cfb390f8bbf0413898c3a1ce3b7115f"} gateway-1 | {"time_local":"24/Jul/2024:16:17:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2506","request_time":"2.769","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"4ffe07f81b589e0c380f31db58ed8611"} experiment-1 | {"level":"info","message":"DELETE /experiments/fa357dfc-d4b8-4239-ad11-c1807ac1fb9f 204 192ms","method":"DELETE","requestID":"0cbd879df7b291def6544af3b7703053","responseTime":192,"status":204,"url":"/experiments/fa357dfc-d4b8-4239-ad11-c1807ac1fb9f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 142ms","method":"POST","requestID":"38204ded61faadc3460d75b2c893dc01","responseTime":142,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:17: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.148","http_referrer":"","http_user_agent":"node-fetch","requestID":"38204ded61faadc3460d75b2c893dc01"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 140ms","method":"POST","requestID":"98e618309c9a27a994a0c191c16b218e","responseTime":140,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:17: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.148","http_referrer":"","http_user_agent":"node-fetch","requestID":"98e618309c9a27a994a0c191c16b218e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OH0.kX1OMUuKpuIslLHmJ6Qh2x4WTfA4Fqcdtf_WnpEjub0","level":"info","message":"auth send jwt","requestID":"40d8c83f6809f4917712c3aef4e0b60e"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"40d8c83f6809f4917712c3aef4e0b60e","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/4aca758e-5115-4d7b-8b0d-ec351d6fcfcb' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"40d8c83f6809f4917712c3aef4e0b60e"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":119,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:38Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":119,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.183218,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"40d8c83f6809f4917712c3aef4e0b60e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837858,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OH0.kX1OMUuKpuIslLHmJ6Qh2x4WTfA4Fqcdtf_WnpEjub0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"40d8c83f6809f4917712c3aef4e0b60e","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/def8d12b-2213-4634-b7d3-4f055a08fa55' 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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc232c1b3-5a65-4854-b0d0-fef96a52e420","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7d3180ad-bd4c-4691-b442-a8b030502f0e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.1343796} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"40d8c83f6809f4917712c3aef4e0b60e","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"41743615-8f79-4d96-a924-31583a9c5cad","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.142145} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"40d8c83f6809f4917712c3aef4e0b60e","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"68e9ade9-8a7e-4889-b3cd-a2f547b50113","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.1542828} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc232c1b3-5a65-4854-b0d0-fef96a52e420","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"b8161c8b-a2d5-412f-b02b-3bb83db549a7","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.1552155} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"40d8c83f6809f4917712c3aef4e0b60e","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc232c1b3-5a65-4854-b0d0-fef96a52e420","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc232c1b3-5a65-4854-b0d0-fef96a52e420","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:38.155133687Z"}]},"request_id":"0a92c5c1-ade7-42cf-9206-317572627e2c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.1608222} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"40d8c83f6809f4917712c3aef4e0b60e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"40d8c83f6809f4917712c3aef4e0b60e"} gateway-1 | {"time_local":"24/Jul/2024:16:17:38 +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":"40d8c83f6809f4917712c3aef4e0b60e"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"40d8c83f6809f4917712c3aef4e0b60e","responseTime":50,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OH0.kX1OMUuKpuIslLHmJ6Qh2x4WTfA4Fqcdtf_WnpEjub0","level":"info","message":"auth send jwt","requestID":"c6e6ab61186ba3c89dd1b9157902e8f2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c6e6ab61186ba3c89dd1b9157902e8f2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"c6e6ab61186ba3c89dd1b9157902e8f2"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":120,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:38Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":120,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.923547,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"c6e6ab61186ba3c89dd1b9157902e8f2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837858,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OH0.kX1OMUuKpuIslLHmJ6Qh2x4WTfA4Fqcdtf_WnpEjub0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c6e6ab61186ba3c89dd1b9157902e8f2","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2b8bedc3-84fc-4df3-905b-67f1261abc72","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"bab65684-15f3-4a35-bdb0-47fa167efa9e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.1887841} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c6e6ab61186ba3c89dd1b9157902e8f2","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1f797495-f57e-4689-9afc-e551c0d5d4fc","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.1953907} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"c6e6ab61186ba3c89dd1b9157902e8f2","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2b8bedc3-84fc-4df3-905b-67f1261abc72","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"90eb4fa5-d0b1-4b4f-a7d0-0bee2af95f08","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.212076} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1a0ca4bc-8b55-491c-9eef-8c481c23c1fe","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.2123568} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"c6e6ab61186ba3c89dd1b9157902e8f2","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2b8bedc3-84fc-4df3-905b-67f1261abc72","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2b8bedc3-84fc-4df3-905b-67f1261abc72","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:38.212059985Z"}]},"request_id":"d8a8dc6f-5ff3-40f7-9fd3-6cc29f9662fa","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.2175019} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c6e6ab61186ba3c89dd1b9157902e8f2","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"c6e6ab61186ba3c89dd1b9157902e8f2"} gateway-1 | {"time_local":"24/Jul/2024:16:17:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c6e6ab61186ba3c89dd1b9157902e8f2"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"c6e6ab61186ba3c89dd1b9157902e8f2","responseTime":49,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OH0.kX1OMUuKpuIslLHmJ6Qh2x4WTfA4Fqcdtf_WnpEjub0","level":"info","message":"auth send jwt","requestID":"053c84e1cad9bdfb858946b4d791f3ac"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"053c84e1cad9bdfb858946b4d791f3ac","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"053c84e1cad9bdfb858946b4d791f3ac"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":121,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:38Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":121,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.733338,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"053c84e1cad9bdfb858946b4d791f3ac","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837858,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OH0.kX1OMUuKpuIslLHmJ6Qh2x4WTfA4Fqcdtf_WnpEjub0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"053c84e1cad9bdfb858946b4d791f3ac","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F99413e18-c751-41d5-86a7-35affd26523d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a4075102-25cd-4d92-b182-8e37bdd1e43d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.2445128} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"053c84e1cad9bdfb858946b4d791f3ac","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"087f8e3a-9d54-4b65-ab0b-a48bf4b297c7","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.249641} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"053c84e1cad9bdfb858946b4d791f3ac","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F99413e18-c751-41d5-86a7-35affd26523d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"f26069a8-8af2-4084-8116-126ac824cdad","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.2613769} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"630eee47-7193-4370-a876-535ad228a027","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.2617013} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"053c84e1cad9bdfb858946b4d791f3ac","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F99413e18-c751-41d5-86a7-35affd26523d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F99413e18-c751-41d5-86a7-35affd26523d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:38.261362132Z"}]},"request_id":"e27ebb5f-f25e-4494-98f1-6ff278dd8887","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.2660134} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"053c84e1cad9bdfb858946b4d791f3ac","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"053c84e1cad9bdfb858946b4d791f3ac"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"053c84e1cad9bdfb858946b4d791f3ac","responseTime":43,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Jul/2024:16:17:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"053c84e1cad9bdfb858946b4d791f3ac"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OH0.kX1OMUuKpuIslLHmJ6Qh2x4WTfA4Fqcdtf_WnpEjub0","level":"info","message":"auth send jwt","requestID":"dbb7fdd6ca57aff09fe6e52f4bd56991"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"dbb7fdd6ca57aff09fe6e52f4bd56991","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"dbb7fdd6ca57aff09fe6e52f4bd56991"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":122,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:38Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":122,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.717623,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"dbb7fdd6ca57aff09fe6e52f4bd56991","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837858,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OH0.kX1OMUuKpuIslLHmJ6Qh2x4WTfA4Fqcdtf_WnpEjub0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"dbb7fdd6ca57aff09fe6e52f4bd56991","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb45ae90e-75b2-4039-8165-8fe185d66916","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"87b2cad3-def3-47ba-8748-12023fd851d9","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.2933743} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"dbb7fdd6ca57aff09fe6e52f4bd56991","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"873958bb-8fc8-4297-8de7-daae062ea127","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.2998285} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"dbb7fdd6ca57aff09fe6e52f4bd56991","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb45ae90e-75b2-4039-8165-8fe185d66916","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"c5a18212-3e78-4cd8-a85b-4f3ecd5d6ba9","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.3156295} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a28b51a0-9d96-48ab-8d2a-919223b76e64","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.3159285} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"dbb7fdd6ca57aff09fe6e52f4bd56991","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb45ae90e-75b2-4039-8165-8fe185d66916","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb45ae90e-75b2-4039-8165-8fe185d66916","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:38.315611445Z"}]},"request_id":"3f2732ee-08e3-46ea-b999-4ca5a45e4bef","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.3204055} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"dbb7fdd6ca57aff09fe6e52f4bd56991","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"dbb7fdd6ca57aff09fe6e52f4bd56991"} gateway-1 | {"time_local":"24/Jul/2024:16:17:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dbb7fdd6ca57aff09fe6e52f4bd56991"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"dbb7fdd6ca57aff09fe6e52f4bd56991","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OH0.kX1OMUuKpuIslLHmJ6Qh2x4WTfA4Fqcdtf_WnpEjub0","level":"info","message":"auth send jwt","requestID":"9c1ee670952c41fc5403f484a18dbddb"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"9c1ee670952c41fc5403f484a18dbddb","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"9c1ee670952c41fc5403f484a18dbddb"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":123,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:38Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":123,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.106333,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"9c1ee670952c41fc5403f484a18dbddb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837858,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OH0.kX1OMUuKpuIslLHmJ6Qh2x4WTfA4Fqcdtf_WnpEjub0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9c1ee670952c41fc5403f484a18dbddb","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F05705858-0683-432c-a5e6-62f75bbd74ea","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"573f035d-ec49-42e4-af06-cc61450f17ec","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.3490646} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9c1ee670952c41fc5403f484a18dbddb","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"92f84ee7-916b-4e86-b2a1-07dd5ffa447b","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.3561769} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"9c1ee670952c41fc5403f484a18dbddb","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F05705858-0683-432c-a5e6-62f75bbd74ea","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"83186c95-8f45-4e23-a0ed-c390abb23c9f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.3658552} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7cc6f5a4-9cf4-4675-94d1-599b8f89ccac","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.3660028} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"9c1ee670952c41fc5403f484a18dbddb","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F05705858-0683-432c-a5e6-62f75bbd74ea","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F05705858-0683-432c-a5e6-62f75bbd74ea","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:38.365842094Z"}]},"request_id":"cb1f4acf-9d85-4547-937b-be9db81dc834","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.3704083} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9c1ee670952c41fc5403f484a18dbddb","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"9c1ee670952c41fc5403f484a18dbddb"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"9c1ee670952c41fc5403f484a18dbddb","responseTime":46,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Jul/2024:16:17:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9c1ee670952c41fc5403f484a18dbddb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OH0.kX1OMUuKpuIslLHmJ6Qh2x4WTfA4Fqcdtf_WnpEjub0","level":"info","message":"auth send jwt","requestID":"d31224541aa7cd404f38c1dff405d623"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d31224541aa7cd404f38c1dff405d623","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"d31224541aa7cd404f38c1dff405d623"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":124,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:38Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":124,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.835541,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"d31224541aa7cd404f38c1dff405d623","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837858,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OH0.kX1OMUuKpuIslLHmJ6Qh2x4WTfA4Fqcdtf_WnpEjub0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d31224541aa7cd404f38c1dff405d623","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe32d7318-456a-4571-9ff3-481528c7349b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0f2c0ed1-6654-4b3c-8ddf-80fba1e7905f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.395115} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d31224541aa7cd404f38c1dff405d623","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fd52e2d7-0a78-4068-9820-cf3e32df7f72","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.3996334} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"d31224541aa7cd404f38c1dff405d623","responseTime":2,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe32d7318-456a-4571-9ff3-481528c7349b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"240e9809-87d0-4be6-8e46-a5b8516b0133","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.4153054} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"725e51df-0201-4a78-8b46-4e098ac9433d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.4155066} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"d31224541aa7cd404f38c1dff405d623","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe32d7318-456a-4571-9ff3-481528c7349b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe32d7318-456a-4571-9ff3-481528c7349b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:38.415292403Z"}]},"request_id":"eb2f5a9f-0e81-4406-b668-762a5ac08255","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.4193525} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d31224541aa7cd404f38c1dff405d623","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d31224541aa7cd404f38c1dff405d623"} gateway-1 | {"time_local":"24/Jul/2024:16:17:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d31224541aa7cd404f38c1dff405d623"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"d31224541aa7cd404f38c1dff405d623","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OH0.kX1OMUuKpuIslLHmJ6Qh2x4WTfA4Fqcdtf_WnpEjub0","level":"info","message":"auth send jwt","requestID":"4a1e8e13f162886b23d1cd149422dc37"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4a1e8e13f162886b23d1cd149422dc37","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"4a1e8e13f162886b23d1cd149422dc37"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":125,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:38Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":125,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.696447,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4a1e8e13f162886b23d1cd149422dc37","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837858,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OH0.kX1OMUuKpuIslLHmJ6Qh2x4WTfA4Fqcdtf_WnpEjub0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4a1e8e13f162886b23d1cd149422dc37","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F366ebd4c-7af4-47e5-93fb-da1bb53a5aa0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0f5834d1-76c9-456b-87cd-967a04e07c01","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.4435122} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4a1e8e13f162886b23d1cd149422dc37","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"01e3cdba-75e5-4ee5-87e4-6be74d275d57","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.4475036} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"4a1e8e13f162886b23d1cd149422dc37","responseTime":2,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F366ebd4c-7af4-47e5-93fb-da1bb53a5aa0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"05870f2e-66cb-4cef-bfab-c659c5fa832c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.4589307} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8e45421a-fa72-4085-8e0d-3a11112855d2","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.4591358} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"4a1e8e13f162886b23d1cd149422dc37","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F366ebd4c-7af4-47e5-93fb-da1bb53a5aa0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F366ebd4c-7af4-47e5-93fb-da1bb53a5aa0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:38.458913004Z"}]},"request_id":"0e94c887-508c-47a4-845e-c5bfd043c169","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.4635966} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"4a1e8e13f162886b23d1cd149422dc37","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4a1e8e13f162886b23d1cd149422dc37"} device-1 | {"level":"info","message":"POST /devices? 201 38ms","method":"POST","requestID":"4a1e8e13f162886b23d1cd149422dc37","responseTime":38,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Jul/2024:16:17:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.042","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4a1e8e13f162886b23d1cd149422dc37"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OH0.kX1OMUuKpuIslLHmJ6Qh2x4WTfA4Fqcdtf_WnpEjub0","level":"info","message":"auth send jwt","requestID":"4503ba0fb1974f6e6c4052e30ac2e4b5"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4503ba0fb1974f6e6c4052e30ac2e4b5","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"4503ba0fb1974f6e6c4052e30ac2e4b5"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":126,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:38Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":126,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.997594,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4503ba0fb1974f6e6c4052e30ac2e4b5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837858,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OH0.kX1OMUuKpuIslLHmJ6Qh2x4WTfA4Fqcdtf_WnpEjub0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4503ba0fb1974f6e6c4052e30ac2e4b5","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ca8712b-8590-4fbd-aa1c-303cb8a6d2c1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"87867e58-71e9-4aad-9af2-761990eb172a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.4884655} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4503ba0fb1974f6e6c4052e30ac2e4b5","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5afad33e-6861-4448-afe8-a46529be7d4b","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.492676} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"4503ba0fb1974f6e6c4052e30ac2e4b5","responseTime":2,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ca8712b-8590-4fbd-aa1c-303cb8a6d2c1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"39ab9f48-2cd5-45de-be64-6d356d073698","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.5086327} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"91a8ca1b-55c5-449a-a288-1cce438c876b","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.5087874} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"4503ba0fb1974f6e6c4052e30ac2e4b5","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ca8712b-8590-4fbd-aa1c-303cb8a6d2c1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ca8712b-8590-4fbd-aa1c-303cb8a6d2c1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:38.508619962Z"}]},"request_id":"06f2ec83-955b-4d4f-b4e9-31abe51d788e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.5127287} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4503ba0fb1974f6e6c4052e30ac2e4b5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4503ba0fb1974f6e6c4052e30ac2e4b5"} gateway-1 | {"time_local":"24/Jul/2024:16:17:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4503ba0fb1974f6e6c4052e30ac2e4b5"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"4503ba0fb1974f6e6c4052e30ac2e4b5","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OH0.kX1OMUuKpuIslLHmJ6Qh2x4WTfA4Fqcdtf_WnpEjub0","level":"info","message":"auth send jwt","requestID":"c0367ba4b720e901075d9c5b247d7031"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c0367ba4b720e901075d9c5b247d7031","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"c0367ba4b720e901075d9c5b247d7031"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":127,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:38Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":127,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.704253,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"c0367ba4b720e901075d9c5b247d7031","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837858,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OH0.kX1OMUuKpuIslLHmJ6Qh2x4WTfA4Fqcdtf_WnpEjub0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c0367ba4b720e901075d9c5b247d7031","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15c14a2c-c0a5-4de6-8f2c-94f50c22653e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"5b090fd2-3504-49de-998f-0895387874f3","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.5411775} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c0367ba4b720e901075d9c5b247d7031","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9efb8138-ffcd-4881-a278-d228cdaa9afa","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.54688} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"c0367ba4b720e901075d9c5b247d7031","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15c14a2c-c0a5-4de6-8f2c-94f50c22653e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"59db2e2d-3064-4800-a930-c8ae66043b17","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.5590773} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"85b8e3cc-df6b-42de-89d4-a823a02f1014","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.5593784} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"c0367ba4b720e901075d9c5b247d7031","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15c14a2c-c0a5-4de6-8f2c-94f50c22653e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15c14a2c-c0a5-4de6-8f2c-94f50c22653e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:38.559053266Z"}]},"request_id":"b4d30a63-fa5f-43c1-a32d-a0c187eee220","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.566126} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c0367ba4b720e901075d9c5b247d7031","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"c0367ba4b720e901075d9c5b247d7031"} gateway-1 | {"time_local":"24/Jul/2024:16:17:38 +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":"c0367ba4b720e901075d9c5b247d7031"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"c0367ba4b720e901075d9c5b247d7031","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OH0.kX1OMUuKpuIslLHmJ6Qh2x4WTfA4Fqcdtf_WnpEjub0","level":"info","message":"auth send jwt","requestID":"0d664c534edd7a845693c79dce5a2aa0"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"0d664c534edd7a845693c79dce5a2aa0","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"0d664c534edd7a845693c79dce5a2aa0"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":128,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:38Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":128,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.13958,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"0d664c534edd7a845693c79dce5a2aa0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837858,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OH0.kX1OMUuKpuIslLHmJ6Qh2x4WTfA4Fqcdtf_WnpEjub0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0d664c534edd7a845693c79dce5a2aa0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F823d9ecf-85a0-4795-a820-af2421131da6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"80af8573-e57e-4f8e-979a-5f772384a030","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.5996683} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0d664c534edd7a845693c79dce5a2aa0","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"08c5f41d-4263-4fd6-ab83-39b9076d1106","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.6075726} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"0d664c534edd7a845693c79dce5a2aa0","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F823d9ecf-85a0-4795-a820-af2421131da6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"d8114867-ef78-4cf4-8fd0-051c64df58b8","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.6252222} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4703eb72-2385-4d86-bc2f-9508bb09682f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.6254778} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"0d664c534edd7a845693c79dce5a2aa0","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F823d9ecf-85a0-4795-a820-af2421131da6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F823d9ecf-85a0-4795-a820-af2421131da6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:38.625197697Z"}]},"request_id":"df8002d2-a22f-43eb-9ce2-ddbd7c1f8a1d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.634799} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0d664c534edd7a845693c79dce5a2aa0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"0d664c534edd7a845693c79dce5a2aa0"} gateway-1 | {"time_local":"24/Jul/2024:16:17:38 +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":"0d664c534edd7a845693c79dce5a2aa0"} device-1 | {"level":"info","message":"POST /devices? 201 62ms","method":"POST","requestID":"0d664c534edd7a845693c79dce5a2aa0","responseTime":62,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OH0.kX1OMUuKpuIslLHmJ6Qh2x4WTfA4Fqcdtf_WnpEjub0","level":"info","message":"auth send jwt","requestID":"774e74f608dbc905ba3b98867d09a176"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"774e74f608dbc905ba3b98867d09a176","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"774e74f608dbc905ba3b98867d09a176"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":129,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:38Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":129,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.258973,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"774e74f608dbc905ba3b98867d09a176","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837858,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OH0.kX1OMUuKpuIslLHmJ6Qh2x4WTfA4Fqcdtf_WnpEjub0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"774e74f608dbc905ba3b98867d09a176","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76b7d510-0e9e-4f27-bdf9-1b07badee63b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e86e2224-c459-4baa-b8f2-5cf00830da46","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.6708727} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"774e74f608dbc905ba3b98867d09a176","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9ee84ca1-c0d0-4e3c-bbb2-e6e020e1af3c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.6784215} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"774e74f608dbc905ba3b98867d09a176","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76b7d510-0e9e-4f27-bdf9-1b07badee63b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"8a6bbd98-438c-4498-b839-727eb1b093c6","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.6921337} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9904951d-f57d-4f7c-8cd0-447689873362","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.6924} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"774e74f608dbc905ba3b98867d09a176","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76b7d510-0e9e-4f27-bdf9-1b07badee63b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76b7d510-0e9e-4f27-bdf9-1b07badee63b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:38.692100010Z"}]},"request_id":"446a4367-ab60-47c3-b5a7-345f10c70d25","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.698963} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"774e74f608dbc905ba3b98867d09a176","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"774e74f608dbc905ba3b98867d09a176"} device-1 | {"level":"info","message":"POST /devices? 201 56ms","method":"POST","requestID":"774e74f608dbc905ba3b98867d09a176","responseTime":56,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Jul/2024:16:17:38 +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":"774e74f608dbc905ba3b98867d09a176"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OH0.kX1OMUuKpuIslLHmJ6Qh2x4WTfA4Fqcdtf_WnpEjub0","level":"info","message":"auth send jwt","requestID":"809da6ce9e823afa13dbd567ec5765ba"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"809da6ce9e823afa13dbd567ec5765ba","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"809da6ce9e823afa13dbd567ec5765ba"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":130,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:38Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":130,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.243055,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"809da6ce9e823afa13dbd567ec5765ba","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837858,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OH0.kX1OMUuKpuIslLHmJ6Qh2x4WTfA4Fqcdtf_WnpEjub0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"809da6ce9e823afa13dbd567ec5765ba","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1969127c-b0f3-4e10-931e-11356629f439","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e64d6be0-09a3-4c29-a403-9d38ce135177","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.734775} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"809da6ce9e823afa13dbd567ec5765ba","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"433b167b-bdf3-4812-b581-d834021e984c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.7426107} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"809da6ce9e823afa13dbd567ec5765ba","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1969127c-b0f3-4e10-931e-11356629f439","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"6bd91aec-b647-4bfd-a494-daecba7c8678","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.7610598} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"07c3e461-8f60-4fa7-b975-60134f65c531","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.7611501} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"809da6ce9e823afa13dbd567ec5765ba","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1969127c-b0f3-4e10-931e-11356629f439","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1969127c-b0f3-4e10-931e-11356629f439","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:38.761045791Z"}]},"request_id":"f63128f2-963d-4dbd-b60e-a335afa64c55","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.7677763} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"809da6ce9e823afa13dbd567ec5765ba","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"809da6ce9e823afa13dbd567ec5765ba"} device-1 | {"level":"info","message":"POST /devices? 201 61ms","method":"POST","requestID":"809da6ce9e823afa13dbd567ec5765ba","responseTime":61,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Jul/2024:16:17:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"1347","request_time":"0.066","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"809da6ce9e823afa13dbd567ec5765ba"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OH0.kX1OMUuKpuIslLHmJ6Qh2x4WTfA4Fqcdtf_WnpEjub0","level":"info","message":"auth send jwt","requestID":"9dbf86f6191396a5dca21141795b386d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9dbf86f6191396a5dca21141795b386d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"9dbf86f6191396a5dca21141795b386d"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":131,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:38Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":131,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.372578,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"9dbf86f6191396a5dca21141795b386d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837858,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OH0.kX1OMUuKpuIslLHmJ6Qh2x4WTfA4Fqcdtf_WnpEjub0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"9dbf86f6191396a5dca21141795b386d","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8bd5a7f3-a759-4d49-bd8a-a55efba8f6b6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e6af456a-6944-4a0c-8e25-03acc0eed914","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.8027802} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9dbf86f6191396a5dca21141795b386d","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7704954a-14fd-4b3f-a4ff-868e6e809b68","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.8107157} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"9dbf86f6191396a5dca21141795b386d","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8bd5a7f3-a759-4d49-bd8a-a55efba8f6b6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"4acfbf94-e6ba-476d-9361-aeaaa5ab9248","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.8241816} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"57460632-bcb6-4097-a2a0-5585d7d185ae","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.8242507} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"9dbf86f6191396a5dca21141795b386d","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8bd5a7f3-a759-4d49-bd8a-a55efba8f6b6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8bd5a7f3-a759-4d49-bd8a-a55efba8f6b6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:38.824167389Z"}]},"request_id":"cb97583b-3094-489b-bff0-f1e26c266893","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.8314164} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9dbf86f6191396a5dca21141795b386d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"9dbf86f6191396a5dca21141795b386d"} device-1 | {"level":"info","message":"POST /devices? 201 56ms","method":"POST","requestID":"9dbf86f6191396a5dca21141795b386d","responseTime":56,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Jul/2024:16:17:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"1070","request_time":"0.061","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9dbf86f6191396a5dca21141795b386d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OH0.kX1OMUuKpuIslLHmJ6Qh2x4WTfA4Fqcdtf_WnpEjub0","level":"info","message":"auth send jwt","requestID":"5c585409e6087784f9fcd44840170088"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"5c585409e6087784f9fcd44840170088","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"5c585409e6087784f9fcd44840170088"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":132,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:38Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":132,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.525038,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:38Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/76b7d510-0e9e-4f27-bdf9-1b07badee63b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5c585409e6087784f9fcd44840170088","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/76b7d510-0e9e-4f27-bdf9-1b07badee63b","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837858,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OH0.kX1OMUuKpuIslLHmJ6Qh2x4WTfA4Fqcdtf_WnpEjub0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5c585409e6087784f9fcd44840170088","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76b7d510-0e9e-4f27-bdf9-1b07badee63b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76b7d510-0e9e-4f27-bdf9-1b07badee63b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:38.692100010Z"}]},"request_id":"0f043f12-67fc-4341-b3fe-a9333033d7c3","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.8645964} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"5c585409e6087784f9fcd44840170088","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d4202fe7-7895-45ff-8bd2-cdc2e0da448f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.8766327} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"5c585409e6087784f9fcd44840170088","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76b7d510-0e9e-4f27-bdf9-1b07badee63b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76b7d510-0e9e-4f27-bdf9-1b07badee63b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:38.692100010Z"}]},"request_id":"80298629-baeb-4e3f-b32a-c3ed870a0ffc","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.8895302} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"5c585409e6087784f9fcd44840170088","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"5c585409e6087784f9fcd44840170088"} gateway-1 | {"time_local":"24/Jul/2024:16:17:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/76b7d510-0e9e-4f27-bdf9-1b07badee63b? HTTP/1.1","status": "200","body_bytes_sent":"1141","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5c585409e6087784f9fcd44840170088"} device-1 | {"level":"info","message":"PATCH /devices/76b7d510-0e9e-4f27-bdf9-1b07badee63b? 200 48ms","method":"PATCH","requestID":"5c585409e6087784f9fcd44840170088","responseTime":48,"status":200,"url":"/devices/76b7d510-0e9e-4f27-bdf9-1b07badee63b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OH0.kX1OMUuKpuIslLHmJ6Qh2x4WTfA4Fqcdtf_WnpEjub0","level":"info","message":"auth send jwt","requestID":"83f46f895f6ad64920a973749e51a1ad"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"83f46f895f6ad64920a973749e51a1ad","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"83f46f895f6ad64920a973749e51a1ad"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":133,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:38Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":133,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.139077,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:38Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1969127c-b0f3-4e10-931e-11356629f439","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"83f46f895f6ad64920a973749e51a1ad","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/1969127c-b0f3-4e10-931e-11356629f439","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837858,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OH0.kX1OMUuKpuIslLHmJ6Qh2x4WTfA4Fqcdtf_WnpEjub0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"83f46f895f6ad64920a973749e51a1ad","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1969127c-b0f3-4e10-931e-11356629f439","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1969127c-b0f3-4e10-931e-11356629f439","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:38.761045791Z"}]},"request_id":"8d607891-e480-4040-bbe8-5300f71f9b0d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.9160888} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"83f46f895f6ad64920a973749e51a1ad","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a60a39d0-3c48-465a-9e96-c2bc424dc0ef","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.9231322} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"83f46f895f6ad64920a973749e51a1ad","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1969127c-b0f3-4e10-931e-11356629f439","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1969127c-b0f3-4e10-931e-11356629f439","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:38.761045791Z"}]},"request_id":"8ad65265-c273-45f5-b42f-16d5dbeb8b2f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.934928} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"83f46f895f6ad64920a973749e51a1ad","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"83f46f895f6ad64920a973749e51a1ad"} gateway-1 | {"time_local":"24/Jul/2024:16:17:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/1969127c-b0f3-4e10-931e-11356629f439? HTTP/1.1","status": "200","body_bytes_sent":"1491","request_time":"0.043","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"83f46f895f6ad64920a973749e51a1ad"} device-1 | {"level":"info","message":"PATCH /devices/1969127c-b0f3-4e10-931e-11356629f439? 200 38ms","method":"PATCH","requestID":"83f46f895f6ad64920a973749e51a1ad","responseTime":38,"status":200,"url":"/devices/1969127c-b0f3-4e10-931e-11356629f439?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OH0.kX1OMUuKpuIslLHmJ6Qh2x4WTfA4Fqcdtf_WnpEjub0","level":"info","message":"auth send jwt","requestID":"20d5c745abc79cfa8afbd421bdd6ef6c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"20d5c745abc79cfa8afbd421bdd6ef6c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"20d5c745abc79cfa8afbd421bdd6ef6c"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":134,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:38Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":134,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.918843,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:38Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8bd5a7f3-a759-4d49-bd8a-a55efba8f6b6","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"20d5c745abc79cfa8afbd421bdd6ef6c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/8bd5a7f3-a759-4d49-bd8a-a55efba8f6b6","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837858,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OH0.kX1OMUuKpuIslLHmJ6Qh2x4WTfA4Fqcdtf_WnpEjub0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"20d5c745abc79cfa8afbd421bdd6ef6c","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8bd5a7f3-a759-4d49-bd8a-a55efba8f6b6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8bd5a7f3-a759-4d49-bd8a-a55efba8f6b6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:38.824167389Z"}]},"request_id":"5ac51d01-2b44-4589-8817-6b0b6b3995a8","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.9604282} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"20d5c745abc79cfa8afbd421bdd6ef6c","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a5b98a66-cbf9-415c-a6fc-09307d9a740e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.9658904} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"20d5c745abc79cfa8afbd421bdd6ef6c","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8bd5a7f3-a759-4d49-bd8a-a55efba8f6b6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8bd5a7f3-a759-4d49-bd8a-a55efba8f6b6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:38.824167389Z"}]},"request_id":"88ed4810-8e1b-4b3d-bcda-4233ae46db65","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.976799} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"20d5c745abc79cfa8afbd421bdd6ef6c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"20d5c745abc79cfa8afbd421bdd6ef6c"} device-1 | {"level":"info","message":"PATCH /devices/8bd5a7f3-a759-4d49-bd8a-a55efba8f6b6? 200 35ms","method":"PATCH","requestID":"20d5c745abc79cfa8afbd421bdd6ef6c","responseTime":35,"status":200,"url":"/devices/8bd5a7f3-a759-4d49-bd8a-a55efba8f6b6?"} gateway-1 | {"time_local":"24/Jul/2024:16:17:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/8bd5a7f3-a759-4d49-bd8a-a55efba8f6b6? HTTP/1.1","status": "200","body_bytes_sent":"1142","request_time":"0.040","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"20d5c745abc79cfa8afbd421bdd6ef6c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OH0.kX1OMUuKpuIslLHmJ6Qh2x4WTfA4Fqcdtf_WnpEjub0","level":"info","message":"auth send jwt","requestID":"3897cd7148a8ab16b1f87a9037e4d7b3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3897cd7148a8ab16b1f87a9037e4d7b3","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3897cd7148a8ab16b1f87a9037e4d7b3"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":135,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:38Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":135,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.382317,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/76b7d510-0e9e-4f27-bdf9-1b07badee63b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3897cd7148a8ab16b1f87a9037e4d7b3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/76b7d510-0e9e-4f27-bdf9-1b07badee63b","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837858,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OH0.kX1OMUuKpuIslLHmJ6Qh2x4WTfA4Fqcdtf_WnpEjub0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3897cd7148a8ab16b1f87a9037e4d7b3","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76b7d510-0e9e-4f27-bdf9-1b07badee63b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76b7d510-0e9e-4f27-bdf9-1b07badee63b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:38.692100010Z"}]},"request_id":"0f2c57d5-fc52-43a2-aa28-d140e95707f3","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837858.9995039} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3897cd7148a8ab16b1f87a9037e4d7b3","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":136,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:39Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":136,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.693716,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:39Z"} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Received request.","req_id":137,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:39Z"} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Sent response.","req_id":137,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.161253,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:39Z"} authorization-1 | {"client_addr":"127.0.0.1:40460","level":"info","msg":"Received request.","req_id":138,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:39Z"} authorization-1 | {"client_addr":"127.0.0.1:40460","level":"info","msg":"Sent response.","req_id":138,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.816278,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c232c1b3-5a65-4854-b0d0-fef96a52e420","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3897cd7148a8ab16b1f87a9037e4d7b3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/c232c1b3-5a65-4854-b0d0-fef96a52e420","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837858,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OH0.kX1OMUuKpuIslLHmJ6Qh2x4WTfA4Fqcdtf_WnpEjub0"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"3897cd7148a8ab16b1f87a9037e4d7b3","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2b8bedc3-84fc-4df3-905b-67f1261abc72","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3897cd7148a8ab16b1f87a9037e4d7b3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/2b8bedc3-84fc-4df3-905b-67f1261abc72","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837858,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OH0.kX1OMUuKpuIslLHmJ6Qh2x4WTfA4Fqcdtf_WnpEjub0"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"3897cd7148a8ab16b1f87a9037e4d7b3","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/99413e18-c751-41d5-86a7-35affd26523d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3897cd7148a8ab16b1f87a9037e4d7b3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/99413e18-c751-41d5-86a7-35affd26523d","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837858,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OH0.kX1OMUuKpuIslLHmJ6Qh2x4WTfA4Fqcdtf_WnpEjub0"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"3897cd7148a8ab16b1f87a9037e4d7b3","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40476","level":"info","msg":"Received request.","req_id":139,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:39Z"} authorization-1 | {"client_addr":"127.0.0.1:40476","level":"info","msg":"Sent response.","req_id":139,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.39716,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1969127c-b0f3-4e10-931e-11356629f439","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3897cd7148a8ab16b1f87a9037e4d7b3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/1969127c-b0f3-4e10-931e-11356629f439","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837858,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OH0.kX1OMUuKpuIslLHmJ6Qh2x4WTfA4Fqcdtf_WnpEjub0"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"3897cd7148a8ab16b1f87a9037e4d7b3","responseTime":13,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3897cd7148a8ab16b1f87a9037e4d7b3"} gateway-1 | {"time_local":"24/Jul/2024:16:17:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/76b7d510-0e9e-4f27-bdf9-1b07badee63b? HTTP/1.1","status": "200","body_bytes_sent":"1141","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3897cd7148a8ab16b1f87a9037e4d7b3"} device-1 | {"level":"info","message":"GET /devices/76b7d510-0e9e-4f27-bdf9-1b07badee63b? 200 42ms","method":"GET","requestID":"3897cd7148a8ab16b1f87a9037e4d7b3","responseTime":42,"status":200,"url":"/devices/76b7d510-0e9e-4f27-bdf9-1b07badee63b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OX0.OIPfEmUdxxP3sZJ0QXwjH3jstmEFf5gvKV4E-WIg37w","level":"info","message":"auth send jwt","requestID":"b7f450855b0222a51da8356b666b4730"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"b7f450855b0222a51da8356b666b4730","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b7f450855b0222a51da8356b666b4730"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":140,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:39Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":140,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.242742,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1969127c-b0f3-4e10-931e-11356629f439","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"b7f450855b0222a51da8356b666b4730","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/1969127c-b0f3-4e10-931e-11356629f439","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837859,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OX0.OIPfEmUdxxP3sZJ0QXwjH3jstmEFf5gvKV4E-WIg37w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b7f450855b0222a51da8356b666b4730","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1969127c-b0f3-4e10-931e-11356629f439","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1969127c-b0f3-4e10-931e-11356629f439","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:38.761045791Z"}]},"request_id":"13bcadaa-f103-453b-a451-8b2037cbf33c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837859.051255} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b7f450855b0222a51da8356b666b4730","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":141,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:39Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":141,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.082538,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:39Z"} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Received request.","req_id":142,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:39Z"} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Sent response.","req_id":142,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.916912,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:39Z"} authorization-1 | {"client_addr":"127.0.0.1:40460","level":"info","msg":"Received request.","req_id":143,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:39Z"} authorization-1 | {"client_addr":"127.0.0.1:40460","level":"info","msg":"Sent response.","req_id":143,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.002232,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:39Z"} authorization-1 | {"client_addr":"127.0.0.1:40476","level":"info","msg":"Received request.","req_id":144,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:39Z"} authorization-1 | {"client_addr":"127.0.0.1:40476","level":"info","msg":"Sent response.","req_id":144,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.932916,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b45ae90e-75b2-4039-8165-8fe185d66916","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"b7f450855b0222a51da8356b666b4730","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/b45ae90e-75b2-4039-8165-8fe185d66916","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837859,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OX0.OIPfEmUdxxP3sZJ0QXwjH3jstmEFf5gvKV4E-WIg37w"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"b7f450855b0222a51da8356b666b4730","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/05705858-0683-432c-a5e6-62f75bbd74ea","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"b7f450855b0222a51da8356b666b4730","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/05705858-0683-432c-a5e6-62f75bbd74ea","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837859,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OX0.OIPfEmUdxxP3sZJ0QXwjH3jstmEFf5gvKV4E-WIg37w"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"b7f450855b0222a51da8356b666b4730","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e32d7318-456a-4571-9ff3-481528c7349b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"b7f450855b0222a51da8356b666b4730","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/e32d7318-456a-4571-9ff3-481528c7349b","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837859,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OX0.OIPfEmUdxxP3sZJ0QXwjH3jstmEFf5gvKV4E-WIg37w"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"b7f450855b0222a51da8356b666b4730","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/366ebd4c-7af4-47e5-93fb-da1bb53a5aa0","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"b7f450855b0222a51da8356b666b4730","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/366ebd4c-7af4-47e5-93fb-da1bb53a5aa0","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837859,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OX0.OIPfEmUdxxP3sZJ0QXwjH3jstmEFf5gvKV4E-WIg37w"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"b7f450855b0222a51da8356b666b4730","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":145,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:39Z"} authorization-1 | {"client_addr":"127.0.0.1:40484","level":"info","msg":"Received request.","req_id":146,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:39Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":145,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.830801,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8bd5a7f3-a759-4d49-bd8a-a55efba8f6b6","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"b7f450855b0222a51da8356b666b4730","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/8bd5a7f3-a759-4d49-bd8a-a55efba8f6b6","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837859,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OX0.OIPfEmUdxxP3sZJ0QXwjH3jstmEFf5gvKV4E-WIg37w"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b7f450855b0222a51da8356b666b4730","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40484","level":"info","msg":"Sent response.","req_id":146,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.018097,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/76b7d510-0e9e-4f27-bdf9-1b07badee63b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"b7f450855b0222a51da8356b666b4730","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/76b7d510-0e9e-4f27-bdf9-1b07badee63b","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837859,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OX0.OIPfEmUdxxP3sZJ0QXwjH3jstmEFf5gvKV4E-WIg37w"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"b7f450855b0222a51da8356b666b4730","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b7f450855b0222a51da8356b666b4730"} gateway-1 | {"time_local":"24/Jul/2024:16:17:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1969127c-b0f3-4e10-931e-11356629f439? HTTP/1.1","status": "200","body_bytes_sent":"1491","request_time":"0.057","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b7f450855b0222a51da8356b666b4730"} device-1 | {"level":"info","message":"GET /devices/1969127c-b0f3-4e10-931e-11356629f439? 200 52ms","method":"GET","requestID":"b7f450855b0222a51da8356b666b4730","responseTime":52,"status":200,"url":"/devices/1969127c-b0f3-4e10-931e-11356629f439?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OX0.OIPfEmUdxxP3sZJ0QXwjH3jstmEFf5gvKV4E-WIg37w","level":"info","message":"auth send jwt","requestID":"c1b2e4fc1822adc8f7edc5f0bb6d772f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c1b2e4fc1822adc8f7edc5f0bb6d772f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c1b2e4fc1822adc8f7edc5f0bb6d772f"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":147,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:39Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":147,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.278492,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8bd5a7f3-a759-4d49-bd8a-a55efba8f6b6","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"c1b2e4fc1822adc8f7edc5f0bb6d772f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/8bd5a7f3-a759-4d49-bd8a-a55efba8f6b6","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837859,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OX0.OIPfEmUdxxP3sZJ0QXwjH3jstmEFf5gvKV4E-WIg37w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c1b2e4fc1822adc8f7edc5f0bb6d772f","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8bd5a7f3-a759-4d49-bd8a-a55efba8f6b6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8bd5a7f3-a759-4d49-bd8a-a55efba8f6b6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:38.824167389Z"}]},"request_id":"53f5a0a3-df22-4ac5-a106-adca2fee7224","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837859.1105466} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c1b2e4fc1822adc8f7edc5f0bb6d772f","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":148,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:39Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":148,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.975032,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:39Z"} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Received request.","req_id":149,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:39Z"} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Sent response.","req_id":149,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.062675,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:39Z"} authorization-1 | {"client_addr":"127.0.0.1:40460","level":"info","msg":"Received request.","req_id":150,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:39Z"} authorization-1 | {"client_addr":"127.0.0.1:40460","level":"info","msg":"Sent response.","req_id":150,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.119828,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:39Z"} authorization-1 | {"client_addr":"127.0.0.1:40476","level":"info","msg":"Received request.","req_id":151,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ca8712b-8590-4fbd-aa1c-303cb8a6d2c1","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"c1b2e4fc1822adc8f7edc5f0bb6d772f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/3ca8712b-8590-4fbd-aa1c-303cb8a6d2c1","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837859,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OX0.OIPfEmUdxxP3sZJ0QXwjH3jstmEFf5gvKV4E-WIg37w"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"c1b2e4fc1822adc8f7edc5f0bb6d772f","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/15c14a2c-c0a5-4de6-8f2c-94f50c22653e","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"c1b2e4fc1822adc8f7edc5f0bb6d772f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/15c14a2c-c0a5-4de6-8f2c-94f50c22653e","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837859,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OX0.OIPfEmUdxxP3sZJ0QXwjH3jstmEFf5gvKV4E-WIg37w"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"c1b2e4fc1822adc8f7edc5f0bb6d772f","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/823d9ecf-85a0-4795-a820-af2421131da6","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"c1b2e4fc1822adc8f7edc5f0bb6d772f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/823d9ecf-85a0-4795-a820-af2421131da6","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837859,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OX0.OIPfEmUdxxP3sZJ0QXwjH3jstmEFf5gvKV4E-WIg37w"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"c1b2e4fc1822adc8f7edc5f0bb6d772f","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40476","level":"info","msg":"Sent response.","req_id":151,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.188966,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/76b7d510-0e9e-4f27-bdf9-1b07badee63b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"c1b2e4fc1822adc8f7edc5f0bb6d772f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/76b7d510-0e9e-4f27-bdf9-1b07badee63b","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837859,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OX0.OIPfEmUdxxP3sZJ0QXwjH3jstmEFf5gvKV4E-WIg37w"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"c1b2e4fc1822adc8f7edc5f0bb6d772f","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c1b2e4fc1822adc8f7edc5f0bb6d772f"} gateway-1 | {"time_local":"24/Jul/2024:16:17:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8bd5a7f3-a759-4d49-bd8a-a55efba8f6b6? 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":"c1b2e4fc1822adc8f7edc5f0bb6d772f"} device-1 | {"level":"info","message":"GET /devices/8bd5a7f3-a759-4d49-bd8a-a55efba8f6b6? 200 37ms","method":"GET","requestID":"c1b2e4fc1822adc8f7edc5f0bb6d772f","responseTime":37,"status":200,"url":"/devices/8bd5a7f3-a759-4d49-bd8a-a55efba8f6b6?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OX0.OIPfEmUdxxP3sZJ0QXwjH3jstmEFf5gvKV4E-WIg37w","level":"info","message":"auth send jwt","requestID":"63458fe012b0d7a34ba82228dc1d9842"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"63458fe012b0d7a34ba82228dc1d9842","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"63458fe012b0d7a34ba82228dc1d9842"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":152,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:39Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":152,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.169367,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:39Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"63458fe012b0d7a34ba82228dc1d9842","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837859,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OX0.OIPfEmUdxxP3sZJ0QXwjH3jstmEFf5gvKV4E-WIg37w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"63458fe012b0d7a34ba82228dc1d9842","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7df74b63-28cb-4808-a028-0bde4d3bdaf7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4be310d1-4306-4c9e-bb61-768083a7ad55","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837859.1718576} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"63458fe012b0d7a34ba82228dc1d9842","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dd933866-030b-464e-998b-570292df4b29","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837859.1806943} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"63458fe012b0d7a34ba82228dc1d9842","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7df74b63-28cb-4808-a028-0bde4d3bdaf7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"2093faa4-3f73-4533-8951-a267a97f2aab","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837859.1931984} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7c332bc1-9e94-4b9d-a975-e801442febd7","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837859.1936991} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"63458fe012b0d7a34ba82228dc1d9842","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7df74b63-28cb-4808-a028-0bde4d3bdaf7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7df74b63-28cb-4808-a028-0bde4d3bdaf7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:39.193175307Z"}]},"request_id":"245adf8f-e188-4dad-8812-f0a5d3611a20","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837859.201865} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"63458fe012b0d7a34ba82228dc1d9842","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"63458fe012b0d7a34ba82228dc1d9842"} device-1 | {"level":"info","message":"POST /devices? 201 60ms","method":"POST","requestID":"63458fe012b0d7a34ba82228dc1d9842","responseTime":60,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Jul/2024:16:17:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"284","request_time":"0.066","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"63458fe012b0d7a34ba82228dc1d9842"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OX0.OIPfEmUdxxP3sZJ0QXwjH3jstmEFf5gvKV4E-WIg37w","level":"info","message":"auth send jwt","requestID":"ae85a1c971ef607a1162ea8bf82c4f12"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"ae85a1c971ef607a1162ea8bf82c4f12","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ae85a1c971ef607a1162ea8bf82c4f12"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":153,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:39Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":153,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.306587,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:39Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"ae85a1c971ef607a1162ea8bf82c4f12","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837859,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OX0.OIPfEmUdxxP3sZJ0QXwjH3jstmEFf5gvKV4E-WIg37w"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"ae85a1c971ef607a1162ea8bf82c4f12","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca14b808-52e9-4f24-a153-dd44a0d373bd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2b114f71-bd95-45bb-afe3-ec218ab131b7","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837859.2420013} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ae85a1c971ef607a1162ea8bf82c4f12","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"45f458bb-b379-4cdc-8b26-d6b7f6986e45","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837859.2505271} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"ae85a1c971ef607a1162ea8bf82c4f12","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca14b808-52e9-4f24-a153-dd44a0d373bd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"f6796d29-6a6e-47b3-a3af-d58110850b5d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837859.262974} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b622cfc6-9b89-4885-a05e-2636eeb84424","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837859.2634149} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"ae85a1c971ef607a1162ea8bf82c4f12","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca14b808-52e9-4f24-a153-dd44a0d373bd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca14b808-52e9-4f24-a153-dd44a0d373bd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:39.262950005Z"}]},"request_id":"eac6f1ca-cec2-419a-8cf6-401d7d8d534c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837859.2703357} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ae85a1c971ef607a1162ea8bf82c4f12","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ae85a1c971ef607a1162ea8bf82c4f12"} gateway-1 | {"time_local":"24/Jul/2024:16:17:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"545","request_time":"0.066","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ae85a1c971ef607a1162ea8bf82c4f12"} device-1 | {"level":"info","message":"POST /devices? 201 58ms","method":"POST","requestID":"ae85a1c971ef607a1162ea8bf82c4f12","responseTime":58,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OX0.OIPfEmUdxxP3sZJ0QXwjH3jstmEFf5gvKV4E-WIg37w","level":"info","message":"auth send jwt","requestID":"95e07639dbedd4ff5ba5a5caac6192c5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"95e07639dbedd4ff5ba5a5caac6192c5","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"95e07639dbedd4ff5ba5a5caac6192c5"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":154,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:39Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":154,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.171114,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:39Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"95e07639dbedd4ff5ba5a5caac6192c5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837859,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg1OX0.OIPfEmUdxxP3sZJ0QXwjH3jstmEFf5gvKV4E-WIg37w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"95e07639dbedd4ff5ba5a5caac6192c5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a17fe1d7-838b-412e-b6fa-fed0d0a66826","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837859.3138142} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"95e07639dbedd4ff5ba5a5caac6192c5","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d6027521-f335-45c9-8e9e-827fee433ef0","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837859.3215313} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"95e07639dbedd4ff5ba5a5caac6192c5","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"6dac93cb-d79a-4b0f-b356-dfc6ba68f094","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837859.336443} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f72bb279-7baa-4867-ae21-a682cc941671","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837859.336638} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"95e07639dbedd4ff5ba5a5caac6192c5","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:39.336416674Z"}]},"request_id":"92b49f61-f036-43db-aab5-fb032885fbae","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837859.3443823} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"95e07639dbedd4ff5ba5a5caac6192c5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"95e07639dbedd4ff5ba5a5caac6192c5"} gateway-1 | {"time_local":"24/Jul/2024:16:17:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.071","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"95e07639dbedd4ff5ba5a5caac6192c5"} device-1 | {"level":"info","message":"POST /devices? 201 64ms","method":"POST","requestID":"95e07639dbedd4ff5ba5a5caac6192c5","responseTime":64,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4ea336fa512aef7c67912a4029a59992","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"4ea336fa512aef7c67912a4029a59992","responseTime":0,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Jul/2024:16:17:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d/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":"4ea336fa512aef7c67912a4029a59992"} device-1 | {"level":"info","message":"OPTIONS /devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d/websocket 200 2ms","method":"OPTIONS","requestID":"4ea336fa512aef7c67912a4029a59992","responseTime":2,"status":200,"url":"/devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cd41009acf1d1a3cd6b673dabf8e588e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"cd41009acf1d1a3cd6b673dabf8e588e","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Jul/2024:16:17:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7/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":"cd41009acf1d1a3cd6b673dabf8e588e"} device-1 | {"level":"info","message":"OPTIONS /devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7/websocket 200 2ms","method":"OPTIONS","requestID":"cd41009acf1d1a3cd6b673dabf8e588e","responseTime":2,"status":200,"url":"/devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2MX0.9bA9kvPIVFvlsK94DXf6VhjdKV2DKe_a6ZobrEIVDp0","level":"info","message":"auth send jwt","requestID":"e497e4da8b6339e5db2bca3ca3aa3a5e"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e497e4da8b6339e5db2bca3ca3aa3a5e","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e497e4da8b6339e5db2bca3ca3aa3a5e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2MX0.9bA9kvPIVFvlsK94DXf6VhjdKV2DKe_a6ZobrEIVDp0","level":"info","message":"auth send jwt","requestID":"0b4f0bd9dd8179ef86ad1b6177c245f5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0b4f0bd9dd8179ef86ad1b6177c245f5","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0b4f0bd9dd8179ef86ad1b6177c245f5"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":155,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:41Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":155,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.425688,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:41Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"e497e4da8b6339e5db2bca3ca3aa3a5e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837861,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2MX0.9bA9kvPIVFvlsK94DXf6VhjdKV2DKe_a6ZobrEIVDp0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e497e4da8b6339e5db2bca3ca3aa3a5e","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Received request.","req_id":156,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:41Z"} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Sent response.","req_id":156,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.440056,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:41Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"0b4f0bd9dd8179ef86ad1b6177c245f5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837861,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2MX0.9bA9kvPIVFvlsK94DXf6VhjdKV2DKe_a6ZobrEIVDp0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0b4f0bd9dd8179ef86ad1b6177c245f5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0b4f0bd9dd8179ef86ad1b6177c245f5"} gateway-1 | {"time_local":"24/Jul/2024:16:17:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.037","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"0b4f0bd9dd8179ef86ad1b6177c245f5"} device-1 | {"level":"info","message":"POST /devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7/websocket 200 26ms","method":"POST","requestID":"0b4f0bd9dd8179ef86ad1b6177c245f5","responseTime":26,"status":200,"url":"/devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e497e4da8b6339e5db2bca3ca3aa3a5e"} device-1 | {"level":"info","message":"POST /devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d/websocket 200 44ms","method":"POST","requestID":"e497e4da8b6339e5db2bca3ca3aa3a5e","responseTime":44,"status":200,"url":"/devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d/websocket"} gateway-1 | {"time_local":"24/Jul/2024:16:17:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.052","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e497e4da8b6339e5db2bca3ca3aa3a5e"} device-1 | {"level":"info","message":"device 'http://localhost/devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2MX0.9bA9kvPIVFvlsK94DXf6VhjdKV2DKe_a6ZobrEIVDp0","level":"info","message":"auth send jwt","requestID":"e4b1ea36a5cef7153697aea4ba42da7c"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e4b1ea36a5cef7153697aea4ba42da7c","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e4b1ea36a5cef7153697aea4ba42da7c"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":157,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:41Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":157,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.10881,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"e4b1ea36a5cef7153697aea4ba42da7c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837861,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2MX0.9bA9kvPIVFvlsK94DXf6VhjdKV2DKe_a6ZobrEIVDp0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e4b1ea36a5cef7153697aea4ba42da7c","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:39.336416674Z"}]},"request_id":"0f2435f8-cf2c-43dd-bae7-88808e5ce782","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837861.7014458} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e4b1ea36a5cef7153697aea4ba42da7c","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e4b1ea36a5cef7153697aea4ba42da7c"} gateway-1 | {"time_local":"24/Jul/2024:16:17:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e4b1ea36a5cef7153697aea4ba42da7c"} device-1 | {"level":"info","message":"GET /devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d? 200 20ms","method":"GET","requestID":"e4b1ea36a5cef7153697aea4ba42da7c","responseTime":20,"status":200,"url":"/devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2MX0.9bA9kvPIVFvlsK94DXf6VhjdKV2DKe_a6ZobrEIVDp0","level":"info","message":"auth send jwt","requestID":"ac8fad09271fda63415053fce1393c02"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"ac8fad09271fda63415053fce1393c02","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"ac8fad09271fda63415053fce1393c02"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":158,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:41Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":158,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.185397,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"ac8fad09271fda63415053fce1393c02","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837861,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2MX0.9bA9kvPIVFvlsK94DXf6VhjdKV2DKe_a6ZobrEIVDp0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ac8fad09271fda63415053fce1393c02","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9e20d9f0-8552-4f85-a1ba-f669fdb3c740"},"level":"info","message":"Attempting to run experiment","requestID":"ac8fad09271fda63415053fce1393c02"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9e20d9f0-8552-4f85-a1ba-f669fdb3c740"},"level":"info","message":"Attempting to book experiment","requestID":"ac8fad09271fda63415053fce1393c02"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9e20d9f0-8552-4f85-a1ba-f669fdb3c740"},"level":"info","message":"Successfully booked experiment","requestID":"ac8fad09271fda63415053fce1393c02"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"40a60380-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"40a678b0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":159,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:41Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":159,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.913606,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:41Z"} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Received request.","req_id":160,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ca14b808-52e9-4f24-a153-dd44a0d373bd","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"40a60380-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/ca14b808-52e9-4f24-a153-dd44a0d373bd","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837861,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2MX0.9bA9kvPIVFvlsK94DXf6VhjdKV2DKe_a6ZobrEIVDp0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"40a60380-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Sent response.","req_id":160,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.404602,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"40a678b0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837861,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2MX0.9bA9kvPIVFvlsK94DXf6VhjdKV2DKe_a6ZobrEIVDp0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"40a678b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca14b808-52e9-4f24-a153-dd44a0d373bd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca14b808-52e9-4f24-a153-dd44a0d373bd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:39.262950005Z"}]},"request_id":"a60f64a1-24f7-4df3-b4dc-769279366e1f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837861.8290782} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"40a60380-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:39.336416674Z"}]},"request_id":"dba5d888-e02a-4e05-b6d9-65abce38c39d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837861.8299417} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"40a678b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"40a678b0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d? 200 18ms","method":"GET","requestID":"40a678b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":18,"status":200,"url":"/devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d?"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":161,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:41Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":161,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.019497,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"40a60380-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837861,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2MX0.9bA9kvPIVFvlsK94DXf6VhjdKV2DKe_a6ZobrEIVDp0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"40a60380-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"40a60380-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/ca14b808-52e9-4f24-a153-dd44a0d373bd? 200 27ms","method":"GET","requestID":"40a60380-49d8-11ef-9fe8-9113c2c8d024","responseTime":27,"status":200,"url":"/devices/ca14b808-52e9-4f24-a153-dd44a0d373bd?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9e20d9f0-8552-4f85-a1ba-f669fdb3c740"},"level":"info","message":"Setting up experiment","requestID":"ac8fad09271fda63415053fce1393c02"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9e20d9f0-8552-4f85-a1ba-f669fdb3c740"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"ac8fad09271fda63415053fce1393c02"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9e20d9f0-8552-4f85-a1ba-f669fdb3c740"},"level":"info","message":"Successfully locked booking for experiment","requestID":"ac8fad09271fda63415053fce1393c02"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9e20d9f0-8552-4f85-a1ba-f669fdb3c740"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"ac8fad09271fda63415053fce1393c02"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9e20d9f0-8552-4f85-a1ba-f669fdb3c740"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"ac8fad09271fda63415053fce1393c02"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9e20d9f0-8552-4f85-a1ba-f669fdb3c740"},"level":"info","message":"Attempting to update booking for experiment","requestID":"ac8fad09271fda63415053fce1393c02"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9e20d9f0-8552-4f85-a1ba-f669fdb3c740"},"level":"info","message":"Successfully updated booking for experiment","requestID":"ac8fad09271fda63415053fce1393c02"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9e20d9f0-8552-4f85-a1ba-f669fdb3c740"},"level":"info","message":"Successfully set up experiment","requestID":"ac8fad09271fda63415053fce1393c02"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"40c30160-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"40c37690-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"40c412d0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":162,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:42Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":162,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.685505,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:42Z"} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Received request.","req_id":163,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:42Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9e20d9f0-8552-4f85-a1ba-f669fdb3c740"},"level":"info","message":"Successfully running experiment","requestID":"ac8fad09271fda63415053fce1393c02"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"40c30160-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837861,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2MX0.9bA9kvPIVFvlsK94DXf6VhjdKV2DKe_a6ZobrEIVDp0"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"40c30160-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Sent response.","req_id":163,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.902202,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"40c37690-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837861,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2MX0.9bA9kvPIVFvlsK94DXf6VhjdKV2DKe_a6ZobrEIVDp0"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"40c37690-49d8-11ef-9fe8-9113c2c8d024","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":164,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:42Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":164,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.942243,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:42Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7df74b63-28cb-4808-a028-0bde4d3bdaf7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6b08522e-e773-4929-b759-8c94f8b6d871","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837862.0259225} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"40c412d0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7","object_type":"device","rebac_allow":false,"scope_allow":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":"40c412d0-49d8-11ef-9fe8-9113c2c8d024","responseTime":14,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7df74b63-28cb-4808-a028-0bde4d3bdaf7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7df74b63-28cb-4808-a028-0bde4d3bdaf7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:39.193175307Z"}]},"request_id":"badf8518-851a-4ffe-8099-ed8050e66369","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837862.0295186} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:39.336416674Z"}]},"request_id":"d19699d6-ee3c-470f-a230-f848534a7693","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837862.032333} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"40c30160-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"40c37690-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"40c412d0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7/signaling 200 32ms","method":"POST","requestID":"40c412d0-49d8-11ef-9fe8-9113c2c8d024","responseTime":32,"status":200,"url":"/devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"40c30160-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9e20d9f0-8552-4f85-a1ba-f669fdb3c740#owner@http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9e20d9f0-8552-4f85-a1ba-f669fdb3c740","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"0d77b870-fe79-4da5-be9b-bcc140c0783c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837862.0468705} device-1 | {"level":"info","message":"GET /devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7? 200 41ms","method":"GET","requestID":"40c30160-49d8-11ef-9fe8-9113c2c8d024","responseTime":41,"status":200,"url":"/devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"40c37690-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d? 200 41ms","method":"GET","requestID":"40c37690-49d8-11ef-9fe8-9113c2c8d024","responseTime":41,"status":200,"url":"/devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a9e6a472-c9f8-457f-b778-620a5246b933","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837862.0481365} authorization-1 | {"level":"info","message":"POST /relations/update 200 27ms","method":"POST","requestID":"ac8fad09271fda63415053fce1393c02","responseTime":27,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"40c9df30-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":165,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:42Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"40caa280-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c67eceeb-9d2e-4069-a8e1-764048bcb099","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837862.0581813} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":165,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.274205,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"40c9df30-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"40c9df30-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Received request.","req_id":166,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:42Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7df74b63-28cb-4808-a028-0bde4d3bdaf7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6f749299-8b64-4eb4-b0a5-c7a5981b1890","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837862.0657008} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"40c9df30-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Sent response.","req_id":166,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.926517,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:42Z"} device-1 | {"level":"info","message":"POST /devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d/signaling 200 16ms","method":"POST","requestID":"40c9df30-49d8-11ef-9fe8-9113c2c8d024","responseTime":16,"status":200,"url":"/devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d/signaling"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"40caa280-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7","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/9e20d9f0-8552-4f85-a1ba-f669fdb3c740","user":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"ac8fad09271fda63415053fce1393c02"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"40caa280-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"24/Jul/2024:16:17:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"807","request_time":"0.358","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ac8fad09271fda63415053fce1393c02"} experiment-1 | {"level":"info","message":"POST /experiments? 201 349ms","method":"POST","requestID":"ac8fad09271fda63415053fce1393c02","responseTime":349,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"40caa280-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7/signaling 200 19ms","method":"POST","requestID":"40caa280-49d8-11ef-9fe8-9113c2c8d024","responseTime":19,"status":200,"url":"/devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2Mn0.Xp-grKlJT5h7ceB4VFZwUEFFG_URKQfgUhLdvLfKNcQ","level":"info","message":"auth send jwt","requestID":"6c4a48e81f62530fc3c85bcccd658354"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6c4a48e81f62530fc3c85bcccd658354","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6c4a48e81f62530fc3c85bcccd658354"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"40ce4c00-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":167,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:42Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":167,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.932103,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6c4a48e81f62530fc3c85bcccd658354","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837862,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2Mn0.Xp-grKlJT5h7ceB4VFZwUEFFG_URKQfgUhLdvLfKNcQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"6c4a48e81f62530fc3c85bcccd658354","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Received request.","req_id":168,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:42Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cd198dd3-1998-4ba1-b6a5-04c91925f0da","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837862.0868936} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Sent response.","req_id":168,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.984081,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"40ce4c00-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","object_type":"device","rebac_allow":false,"scope_allow":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":"40ce4c00-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7df74b63-28cb-4808-a028-0bde4d3bdaf7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7df74b63-28cb-4808-a028-0bde4d3bdaf7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:39.193175307Z"}]},"request_id":"e7c3a6ea-b9e1-4bcb-b8e6-a3544fce09e3","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837862.0930185} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"40ce4c00-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d/signaling 200 14ms","method":"POST","requestID":"40ce4c00-49d8-11ef-9fe8-9113c2c8d024","responseTime":14,"status":200,"url":"/devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"6c4a48e81f62530fc3c85bcccd658354","responseTime":5,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9e20d9f0-8552-4f85-a1ba-f669fdb3c740"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"ac8fad09271fda63415053fce1393c02"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9e20d9f0-8552-4f85-a1ba-f669fdb3c740"},"level":"info","message":"Building connection plan","requestID":"ac8fad09271fda63415053fce1393c02"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"d7e1cffb-fddc-4d65-8b89-4403e38b9326"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"4832c050-259f-4fd1-8c92-b2d8942741cb"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"d7edf0d6-1d56-41a3-b920-238422f1b909"}]},"level":"info","message":"Built pairwise service configurations","requestID":"ac8fad09271fda63415053fce1393c02"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"ac8fad09271fda63415053fce1393c02"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"40d13230-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6c4a48e81f62530fc3c85bcccd658354"} gateway-1 | {"time_local":"24/Jul/2024:16:17:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7? HTTP/1.1","status": "200","body_bytes_sent":"283","request_time":"0.028","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6c4a48e81f62530fc3c85bcccd658354"} device-1 | {"level":"info","message":"GET /devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7? 200 23ms","method":"GET","requestID":"6c4a48e81f62530fc3c85bcccd658354","responseTime":23,"status":200,"url":"/devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7?"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":169,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:42Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":169,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.123954,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:42Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"40d13230-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837861,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2MX0.9bA9kvPIVFvlsK94DXf6VhjdKV2DKe_a6ZobrEIVDp0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"40d13230-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2Mn0.Xp-grKlJT5h7ceB4VFZwUEFFG_URKQfgUhLdvLfKNcQ","level":"info","message":"auth send jwt","requestID":"5fac8f714420da2680d9edbc53840d92"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5fac8f714420da2680d9edbc53840d92","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5fac8f714420da2680d9edbc53840d92"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":170,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:42Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":170,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.734826,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5fac8f714420da2680d9edbc53840d92","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837862,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2Mn0.Xp-grKlJT5h7ceB4VFZwUEFFG_URKQfgUhLdvLfKNcQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5fac8f714420da2680d9edbc53840d92","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:39.336416674Z"}]},"request_id":"f128b581-2ebf-45fa-9da6-f858af4a4c3a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837862.1192958} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5fac8f714420da2680d9edbc53840d92","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","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%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"fb29454c-77a9-4887-b9aa-d3cfa19dcfcd","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837862.120601} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"92375243-53ae-4675-bab3-35d88bb9cab0","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837862.1208909} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"40d13230-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5fac8f714420da2680d9edbc53840d92"} gateway-1 | {"time_local":"24/Jul/2024:16:17:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5fac8f714420da2680d9edbc53840d92"} device-1 | {"level":"info","message":"GET /devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d? 200 16ms","method":"GET","requestID":"5fac8f714420da2680d9edbc53840d92","responseTime":16,"status":200,"url":"/devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"40d13230-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"40d13230-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/b3ecc4bd-3cfd-4263-bf83-8f5b15002195'","requestID":"40d13230-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/b3ecc4bd-3cfd-4263-bf83-8f5b15002195'","requestID":"40d13230-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"40d13230-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 40ms","method":"POST","requestID":"40d13230-49d8-11ef-9fe8-9113c2c8d024","responseTime":40,"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":"40d13230-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/b3ecc4bd-3cfd-4263-bf83-8f5b15002195","device":"cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/b3ecc4bd-3cfd-4263-bf83-8f5b15002195","device":"7df74b63-28cb-4808-a028-0bde4d3bdaf7","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9e20d9f0-8552-4f85-a1ba-f669fdb3c740"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"ac8fad09271fda63415053fce1393c02"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"40db9270-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":171,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:42Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7df74b63-28cb-4808-a028-0bde4d3bdaf7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"178ff17b-2965-42bc-894b-56b2fbc4b5e8","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837862.1719975} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":171,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.733601,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"40db9270-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"40db9270-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"40db9270-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7/signaling 200 9ms","method":"POST","requestID":"40db9270-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"40dd4020-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"device":"7df74b63-28cb-4808-a028-0bde4d3bdaf7","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":172,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:42Z"} device-1 | {"content":{"canTrickle":true},"device":"7df74b63-28cb-4808-a028-0bde4d3bdaf7","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0278e6a8-e546-428c-93ef-5272d3e889f3","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837862.183663} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":172,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.544326,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"40dd4020-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"40dd4020-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"40dd4020-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d/signaling 200 10ms","method":"POST","requestID":"40dd4020-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d/signaling"} device-1 | {"device":"cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 6832528484447353755 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:Plfa\r\na=ice-pwd:MEp21DkXbdLBlmyDEomofzxH\r\na=ice-options:trickle\r\na=fingerprint:sha-256 B3:B5:F5:5B:51:50:63:64:5E:3F:CD:73:39:08:A0:6B:39:5D:23:68:2A:40:FB:5B:BA:CB:42:19:0E:87:E2:B2\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 137262091884258781 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:YsB0\r\na=ice-pwd:mFyY9Kg+UAklWs2U/7Gx4VLq\r\na=ice-options:trickle\r\na=fingerprint:sha-256 EF:6C:55:0F:C0:02:E9:26:8E:32:1D:F5:55:2F:C3:39:8F:33:AE:56:94:58:91:CF:74:62:3A:D0:46:92:7C:9D\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"7df74b63-28cb-4808-a028-0bde4d3bdaf7","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:580507598 1 udp 2113937151 b0b56e3c-a170-4bc3-86c7-c705df706fc1.local 36973 typ host generation 0 ufrag YsB0 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"7df74b63-28cb-4808-a028-0bde4d3bdaf7","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2981263069 1 udp 1677729535 141.24.211.56 36973 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag YsB0 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"7df74b63-28cb-4808-a028-0bde4d3bdaf7","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/7df74b63-28cb-4808-a028-0bde4d3bdaf7'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7'"} device-1 | {"content":{"candidate":"candidate:615493809 1 udp 2113937151 594a1536-bc78-4ddf-b9bf-8cb0638c0a60.local 40218 typ host generation 0 ufrag Plfa network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3078885794 1 udp 1677729535 141.24.211.56 40218 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag Plfa network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","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/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d'"} device-1 | {"device":"cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"7df74b63-28cb-4808-a028-0bde4d3bdaf7","deviceName":"Internal Test Device","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/b3ecc4bd-3cfd-4263-bf83-8f5b15002195' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b3ecc4bd-3cfd-4263-bf83-8f5b15002195","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8ba3c46a448a18831ca301f6bf9c1692","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"7df74b63-28cb-4808-a028-0bde4d3bdaf7","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8ba3c46a448a18831ca301f6bf9c1692","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/b3ecc4bd-3cfd-4263-bf83-8f5b15002195"}}},"level":"info","message":"received a callback","requestID":"8ba3c46a448a18831ca301f6bf9c1692"} device-1 | {"device":"7df74b63-28cb-4808-a028-0bde4d3bdaf7","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"8ba3c46a448a18831ca301f6bf9c1692","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:17: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.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"8ba3c46a448a18831ca301f6bf9c1692"} device-1 | {"device":"7df74b63-28cb-4808-a028-0bde4d3bdaf7","deviceName":"Internal Test Device","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"b3ecc4bd-3cfd-4263-bf83-8f5b15002195","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"b3ecc4bd-3cfd-4263-bf83-8f5b15002195","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/b3ecc4bd-3cfd-4263-bf83-8f5b15002195' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b3ecc4bd-3cfd-4263-bf83-8f5b15002195","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ff92a321dcfc14c55d95370add700ebe","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"ff92a321dcfc14c55d95370add700ebe","responseTime":0,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/b3ecc4bd-3cfd-4263-bf83-8f5b15002195"}}},"level":"info","message":"received a callback","requestID":"ff92a321dcfc14c55d95370add700ebe"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"40e99c30-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":173,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:42Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb3ecc4bd-3cfd-4263-bf83-8f5b15002195","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"953d175d-3277-449c-a758-3c183b58fa62","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837862.2635458} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":173,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.091001,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b3ecc4bd-3cfd-4263-bf83-8f5b15002195","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"40e99c30-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/b3ecc4bd-3cfd-4263-bf83-8f5b15002195","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":"40e99c30-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"40e99c30-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /peerconnections/b3ecc4bd-3cfd-4263-bf83-8f5b15002195 200 8ms","method":"GET","requestID":"40e99c30-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/peerconnections/b3ecc4bd-3cfd-4263-bf83-8f5b15002195"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 33ms","method":"POST","requestID":"ff92a321dcfc14c55d95370add700ebe","responseTime":33,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:17: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.035","http_referrer":"","http_user_agent":"node-fetch","requestID":"ff92a321dcfc14c55d95370add700ebe"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"40ee0900-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":174,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:42Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7df74b63-28cb-4808-a028-0bde4d3bdaf7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f13cfb39-0b8e-41c4-ad20-1e45e7da1db2","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837862.2926633} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":174,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.143712,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"40ee0900-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"40ee0900-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"40ee0900-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7/signaling 200 9ms","method":"POST","requestID":"40ee0900-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"40efb6b0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":175,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:42Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bca813de-659c-4ac2-9fe7-cc6e1ab94ec8","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837862.3034284} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":175,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.22371,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"40efb6b0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"40efb6b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"40efb6b0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d/signaling 200 8ms","method":"POST","requestID":"40efb6b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2Mn0.Xp-grKlJT5h7ceB4VFZwUEFFG_URKQfgUhLdvLfKNcQ","level":"info","message":"auth send jwt","requestID":"e8bfc66b38fdff46fc4a5406c816e870"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e8bfc66b38fdff46fc4a5406c816e870","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/9e20d9f0-8552-4f85-a1ba-f669fdb3c740","requestID":"e8bfc66b38fdff46fc4a5406c816e870"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":176,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:42Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":176,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.707812,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/9e20d9f0-8552-4f85-a1ba-f669fdb3c740","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"e8bfc66b38fdff46fc4a5406c816e870","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/9e20d9f0-8552-4f85-a1ba-f669fdb3c740","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837862,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2Mn0.Xp-grKlJT5h7ceB4VFZwUEFFG_URKQfgUhLdvLfKNcQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e8bfc66b38fdff46fc4a5406c816e870","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/9e20d9f0-8552-4f85-a1ba-f669fdb3c740","requestID":"e8bfc66b38fdff46fc4a5406c816e870"} gateway-1 | {"time_local":"24/Jul/2024:16:17:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/9e20d9f0-8552-4f85-a1ba-f669fdb3c740 HTTP/1.1","status": "200","body_bytes_sent":"880","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e8bfc66b38fdff46fc4a5406c816e870"} experiment-1 | {"level":"info","message":"GET /experiments/9e20d9f0-8552-4f85-a1ba-f669fdb3c740 200 12ms","method":"GET","requestID":"e8bfc66b38fdff46fc4a5406c816e870","responseTime":12,"status":200,"url":"/experiments/9e20d9f0-8552-4f85-a1ba-f669fdb3c740"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2Mn0.Xp-grKlJT5h7ceB4VFZwUEFFG_URKQfgUhLdvLfKNcQ","level":"info","message":"auth send jwt","requestID":"6c111b76dafaa0a66d5d65670cd24153"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6c111b76dafaa0a66d5d65670cd24153","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/9e20d9f0-8552-4f85-a1ba-f669fdb3c740","requestID":"6c111b76dafaa0a66d5d65670cd24153"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":177,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:42Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":177,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.24461,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:42Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/9e20d9f0-8552-4f85-a1ba-f669fdb3c740","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6c111b76dafaa0a66d5d65670cd24153","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/9e20d9f0-8552-4f85-a1ba-f669fdb3c740","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837862,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2Mn0.Xp-grKlJT5h7ceB4VFZwUEFFG_URKQfgUhLdvLfKNcQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6c111b76dafaa0a66d5d65670cd24153","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9e20d9f0-8552-4f85-a1ba-f669fdb3c740"},"level":"info","message":"Attempting to finish experiment","requestID":"6c111b76dafaa0a66d5d65670cd24153"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"40fa6510-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":178,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:42Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":178,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.219275,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:42Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b3ecc4bd-3cfd-4263-bf83-8f5b15002195","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"40fa6510-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:http://localhost/peerconnections/b3ecc4bd-3cfd-4263-bf83-8f5b15002195","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837862,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2Mn0.Xp-grKlJT5h7ceB4VFZwUEFFG_URKQfgUhLdvLfKNcQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"40fa6510-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/b3ecc4bd-3cfd-4263-bf83-8f5b15002195","device":"7df74b63-28cb-4808-a028-0bde4d3bdaf7","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/b3ecc4bd-3cfd-4263-bf83-8f5b15002195","device":"cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","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/b3ecc4bd-3cfd-4263-bf83-8f5b15002195' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/b3ecc4bd-3cfd-4263-bf83-8f5b15002195' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b3ecc4bd-3cfd-4263-bf83-8f5b15002195","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0f0f530deb2fb0dd664942b9f4a613fb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/b3ecc4bd-3cfd-4263-bf83-8f5b15002195"}}},"level":"info","message":"received a callback","requestID":"0f0f530deb2fb0dd664942b9f4a613fb"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"0f0f530deb2fb0dd664942b9f4a613fb","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cca1e21293f53618e2eb08bd80dcc270","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb3ecc4bd-3cfd-4263-bf83-8f5b15002195': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb3ecc4bd-3cfd-4263-bf83-8f5b15002195","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"643cfc17-0a94-4c48-a985-650f6c559a70","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837862.404631} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"097268e1-68f9-4fa2-b0f7-3db054713726","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837862.4051309} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/b3ecc4bd-3cfd-4263-bf83-8f5b15002195"}}},"level":"info","message":"received a callback","requestID":"cca1e21293f53618e2eb08bd80dcc270"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"cca1e21293f53618e2eb08bd80dcc270","responseTime":5,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"40fa6510-49d8-11ef-9fe8-9113c2c8d024","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"b3ecc4bd-3cfd-4263-bf83-8f5b15002195","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"40fa6510-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"DELETE /peerconnections/b3ecc4bd-3cfd-4263-bf83-8f5b15002195 204 53ms","method":"DELETE","requestID":"40fa6510-49d8-11ef-9fe8-9113c2c8d024","responseTime":53,"status":204,"url":"/peerconnections/b3ecc4bd-3cfd-4263-bf83-8f5b15002195"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9e20d9f0-8552-4f85-a1ba-f669fdb3c740"},"level":"info","message":"Successfully finished experiment","requestID":"6c111b76dafaa0a66d5d65670cd24153"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"41067300-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":179,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:42Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7df74b63-28cb-4808-a028-0bde4d3bdaf7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7c14d874-d4f4-438a-957a-8ecb925d84c1","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837862.4550674} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":179,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.404144,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"41067300-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7","object_type":"device","rebac_allow":false,"scope_allow":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":"41067300-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"41067300-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7/signaling 200 15ms","method":"POST","requestID":"41067300-49d8-11ef-9fe8-9113c2c8d024","responseTime":15,"status":200,"url":"/devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7/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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"374f647f-627b-4566-aaea-a6c06f55d49b","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837862.4639888} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9e20d9f0-8552-4f85-a1ba-f669fdb3c740': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9e20d9f0-8552-4f85-a1ba-f669fdb3c740","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"fae5e82c-35d1-4fc4-8e83-54a206758965","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837862.4641626} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"6c111b76dafaa0a66d5d65670cd24153","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"41095930-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":180,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:42Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c7db44f1-fa10-4fef-b45e-c2a18faa9174","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837862.4739273} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":180,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.577955,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"41095930-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d","object_type":"device","rebac_allow":false,"scope_allow":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":"41095930-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"41095930-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d/signaling 200 13ms","method":"POST","requestID":"41095930-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/devices/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/9e20d9f0-8552-4f85-a1ba-f669fdb3c740","requestID":"6c111b76dafaa0a66d5d65670cd24153"} gateway-1 | {"time_local":"24/Jul/2024:16:17:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/9e20d9f0-8552-4f85-a1ba-f669fdb3c740 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":"6c111b76dafaa0a66d5d65670cd24153"} experiment-1 | {"level":"info","message":"DELETE /experiments/9e20d9f0-8552-4f85-a1ba-f669fdb3c740 204 176ms","method":"DELETE","requestID":"6c111b76dafaa0a66d5d65670cd24153","responseTime":176,"status":204,"url":"/experiments/9e20d9f0-8552-4f85-a1ba-f669fdb3c740"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 133ms","method":"POST","requestID":"0f0f530deb2fb0dd664942b9f4a613fb","responseTime":133,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:17: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.139","http_referrer":"","http_user_agent":"node-fetch","requestID":"0f0f530deb2fb0dd664942b9f4a613fb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2Mn0.Xp-grKlJT5h7ceB4VFZwUEFFG_URKQfgUhLdvLfKNcQ","level":"info","message":"auth send jwt","requestID":"21b7a6322b0e031607e52ff54321d066"} gateway-1 | {"time_local":"24/Jul/2024:16:17: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.140","http_referrer":"","http_user_agent":"node-fetch","requestID":"cca1e21293f53618e2eb08bd80dcc270"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 132ms","method":"POST","requestID":"cca1e21293f53618e2eb08bd80dcc270","responseTime":132,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"21b7a6322b0e031607e52ff54321d066","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"21b7a6322b0e031607e52ff54321d066"} gateway-1 | {"time_local":"24/Jul/2024:16:17:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2646","request_time":"1.200","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c908f123a3b63d7627c786a42d8a7b50"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":181,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:42Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":181,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.995983,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:42Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"21b7a6322b0e031607e52ff54321d066","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837862,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2Mn0.Xp-grKlJT5h7ceB4VFZwUEFFG_URKQfgUhLdvLfKNcQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"21b7a6322b0e031607e52ff54321d066","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"24/Jul/2024:16:17:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2645","request_time":"1.199","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"da67253e4f98c22f1b0ab751f6e81eaf"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/7df74b63-28cb-4808-a028-0bde4d3bdaf7' 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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc675f5fb-9215-430b-8622-14c35c36b8b7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"837b9373-6115-4ea4-be4d-0918d9083207","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837862.5606596} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"21b7a6322b0e031607e52ff54321d066","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f8012f44-c881-4304-8882-6ff46da800bb","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837862.5651784} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"21b7a6322b0e031607e52ff54321d066","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/cfcff23d-8b91-4d2d-b435-2e0ae8c60c7d' closed"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc675f5fb-9215-430b-8622-14c35c36b8b7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"4818cc2b-1d8f-4029-b262-dce02aaa1e23","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837862.577216} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3636af69-188b-4d03-9786-b94929e6447f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837862.5774763} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"21b7a6322b0e031607e52ff54321d066","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc675f5fb-9215-430b-8622-14c35c36b8b7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc675f5fb-9215-430b-8622-14c35c36b8b7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:42.577194512Z"}]},"request_id":"056c0a5b-2154-4226-a187-3a789b8325a2","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837862.5815706} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"21b7a6322b0e031607e52ff54321d066","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"21b7a6322b0e031607e52ff54321d066"} gateway-1 | {"time_local":"24/Jul/2024:16:17:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"21b7a6322b0e031607e52ff54321d066"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"21b7a6322b0e031607e52ff54321d066","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2Mn0.Xp-grKlJT5h7ceB4VFZwUEFFG_URKQfgUhLdvLfKNcQ","level":"info","message":"auth send jwt","requestID":"1afcf4308ebf97f8aee8d4dd3ef5b610"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"1afcf4308ebf97f8aee8d4dd3ef5b610","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1afcf4308ebf97f8aee8d4dd3ef5b610"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":182,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:42Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":182,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.624342,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:42Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"1afcf4308ebf97f8aee8d4dd3ef5b610","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837862,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2Mn0.Xp-grKlJT5h7ceB4VFZwUEFFG_URKQfgUhLdvLfKNcQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1afcf4308ebf97f8aee8d4dd3ef5b610","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28f39717-5de0-4aa8-b4a9-2ad590bcc93b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"fffb4915-f93e-4d2d-bfd6-f10923d7458d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837862.6045153} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1afcf4308ebf97f8aee8d4dd3ef5b610","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"af50a471-14b8-45f0-87ad-d011584d27e1","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837862.608907} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"1afcf4308ebf97f8aee8d4dd3ef5b610","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28f39717-5de0-4aa8-b4a9-2ad590bcc93b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"4b1b8dc4-dc7d-404f-bc79-9ce22abc0e57","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837862.6249707} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ab921340-42fc-4c3a-8ec8-e6b3f2cc9aff","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837862.6252136} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"1afcf4308ebf97f8aee8d4dd3ef5b610","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28f39717-5de0-4aa8-b4a9-2ad590bcc93b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28f39717-5de0-4aa8-b4a9-2ad590bcc93b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:42.624955979Z"}]},"request_id":"22935752-f273-4cd7-bffc-0ebee7207c92","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837862.630357} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1afcf4308ebf97f8aee8d4dd3ef5b610","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1afcf4308ebf97f8aee8d4dd3ef5b610"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"1afcf4308ebf97f8aee8d4dd3ef5b610","responseTime":45,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Jul/2024:16:17:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1afcf4308ebf97f8aee8d4dd3ef5b610"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2M30.BYX6XnrN3qMH3lLXXO7XKKJlMoOoMDOXDeLyLoNXdsE","level":"info","message":"auth send jwt","requestID":"2a9acc3e4f5f1fa2cb0a22a986c21232"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"2a9acc3e4f5f1fa2cb0a22a986c21232","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"2a9acc3e4f5f1fa2cb0a22a986c21232"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":183,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:43Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":183,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.114687,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c675f5fb-9215-430b-8622-14c35c36b8b7","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"2a9acc3e4f5f1fa2cb0a22a986c21232","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/c675f5fb-9215-430b-8622-14c35c36b8b7","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837863,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2M30.BYX6XnrN3qMH3lLXXO7XKKJlMoOoMDOXDeLyLoNXdsE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2a9acc3e4f5f1fa2cb0a22a986c21232","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc675f5fb-9215-430b-8622-14c35c36b8b7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc675f5fb-9215-430b-8622-14c35c36b8b7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:42.577194512Z"}]},"request_id":"55104a76-a265-4290-8d14-a5993d26f969","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837863.1351688} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2a9acc3e4f5f1fa2cb0a22a986c21232","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b488f9dd-bce8-491b-99e6-87570aacf1ee","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837863.1427188} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"2a9acc3e4f5f1fa2cb0a22a986c21232","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc675f5fb-9215-430b-8622-14c35c36b8b7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc675f5fb-9215-430b-8622-14c35c36b8b7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:42.577194512Z"}]},"request_id":"dad31f7d-0806-43cb-8b3b-0feb80ea8eef","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837863.1560807} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2a9acc3e4f5f1fa2cb0a22a986c21232","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"2a9acc3e4f5f1fa2cb0a22a986c21232"} gateway-1 | {"time_local":"24/Jul/2024:16:17:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/c675f5fb-9215-430b-8622-14c35c36b8b7 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.046","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"2a9acc3e4f5f1fa2cb0a22a986c21232"} device-1 | {"level":"info","message":"PATCH /devices/c675f5fb-9215-430b-8622-14c35c36b8b7 200 38ms","method":"PATCH","requestID":"2a9acc3e4f5f1fa2cb0a22a986c21232","responseTime":38,"status":200,"url":"/devices/c675f5fb-9215-430b-8622-14c35c36b8b7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2M30.BYX6XnrN3qMH3lLXXO7XKKJlMoOoMDOXDeLyLoNXdsE","level":"info","message":"auth send jwt","requestID":"18a5e3d28e33b504bcfb99093edf6217"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"18a5e3d28e33b504bcfb99093edf6217","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"18a5e3d28e33b504bcfb99093edf6217"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":184,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:43Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":184,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.220089,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c675f5fb-9215-430b-8622-14c35c36b8b7","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"18a5e3d28e33b504bcfb99093edf6217","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/c675f5fb-9215-430b-8622-14c35c36b8b7","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837863,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2M30.BYX6XnrN3qMH3lLXXO7XKKJlMoOoMDOXDeLyLoNXdsE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"18a5e3d28e33b504bcfb99093edf6217","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"18a5e3d28e33b504bcfb99093edf6217"} gateway-1 | {"time_local":"24/Jul/2024:16:17:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c675f5fb-9215-430b-8622-14c35c36b8b7/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.030","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"18a5e3d28e33b504bcfb99093edf6217"} device-1 | {"level":"info","message":"POST /devices/c675f5fb-9215-430b-8622-14c35c36b8b7/websocket 200 24ms","method":"POST","requestID":"18a5e3d28e33b504bcfb99093edf6217","responseTime":24,"status":200,"url":"/devices/c675f5fb-9215-430b-8622-14c35c36b8b7/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c675f5fb-9215-430b-8622-14c35c36b8b7' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5af0540c12ac68352ad1b483f94ac44a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5af0540c12ac68352ad1b483f94ac44a","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Jul/2024:16:17:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b/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":"5af0540c12ac68352ad1b483f94ac44a"} device-1 | {"level":"info","message":"OPTIONS /devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b/websocket 200 1ms","method":"OPTIONS","requestID":"5af0540c12ac68352ad1b483f94ac44a","responseTime":1,"status":200,"url":"/devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2NH0.m6q96G0tykCWOsZYwXNOkUR7OcPcVWsm16TmKOWrXT4","level":"info","message":"auth send jwt","requestID":"0e97ac65ed2182cacec50b1d32649c4a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0e97ac65ed2182cacec50b1d32649c4a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0e97ac65ed2182cacec50b1d32649c4a"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":185,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:44Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":185,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.354494,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:44Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"0e97ac65ed2182cacec50b1d32649c4a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837864,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2NH0.m6q96G0tykCWOsZYwXNOkUR7OcPcVWsm16TmKOWrXT4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0e97ac65ed2182cacec50b1d32649c4a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0e97ac65ed2182cacec50b1d32649c4a"} gateway-1 | {"time_local":"24/Jul/2024:16:17:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b/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":"0e97ac65ed2182cacec50b1d32649c4a"} device-1 | {"level":"info","message":"POST /devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b/websocket 200 24ms","method":"POST","requestID":"0e97ac65ed2182cacec50b1d32649c4a","responseTime":24,"status":200,"url":"/devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2NH0.m6q96G0tykCWOsZYwXNOkUR7OcPcVWsm16TmKOWrXT4","level":"info","message":"auth send jwt","requestID":"e2745d34606deb195492e03c28132f22"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e2745d34606deb195492e03c28132f22","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e2745d34606deb195492e03c28132f22"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":186,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:44Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":186,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.242302,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c675f5fb-9215-430b-8622-14c35c36b8b7","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"e2745d34606deb195492e03c28132f22","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/c675f5fb-9215-430b-8622-14c35c36b8b7","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837864,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2NH0.m6q96G0tykCWOsZYwXNOkUR7OcPcVWsm16TmKOWrXT4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e2745d34606deb195492e03c28132f22","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc675f5fb-9215-430b-8622-14c35c36b8b7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc675f5fb-9215-430b-8622-14c35c36b8b7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:42.577194512Z"}]},"request_id":"a0332300-23a7-41f3-9baa-62ed0a511564","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837864.6852543} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e2745d34606deb195492e03c28132f22","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e2745d34606deb195492e03c28132f22"} gateway-1 | {"time_local":"24/Jul/2024:16:17:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c675f5fb-9215-430b-8622-14c35c36b8b7? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e2745d34606deb195492e03c28132f22"} device-1 | {"level":"info","message":"GET /devices/c675f5fb-9215-430b-8622-14c35c36b8b7? 200 18ms","method":"GET","requestID":"e2745d34606deb195492e03c28132f22","responseTime":18,"status":200,"url":"/devices/c675f5fb-9215-430b-8622-14c35c36b8b7?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2NH0.m6q96G0tykCWOsZYwXNOkUR7OcPcVWsm16TmKOWrXT4","level":"info","message":"auth send jwt","requestID":"ce5c06e965127314ae7dd3d6cf2952dc"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ce5c06e965127314ae7dd3d6cf2952dc","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ce5c06e965127314ae7dd3d6cf2952dc"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":187,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:44Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":187,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.173788,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"ce5c06e965127314ae7dd3d6cf2952dc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837864,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2NH0.m6q96G0tykCWOsZYwXNOkUR7OcPcVWsm16TmKOWrXT4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ce5c06e965127314ae7dd3d6cf2952dc","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28f39717-5de0-4aa8-b4a9-2ad590bcc93b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28f39717-5de0-4aa8-b4a9-2ad590bcc93b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:42.624955979Z"}]},"request_id":"be2badde-3a97-4b1b-b9e1-9e96a961108a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837864.7120876} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ce5c06e965127314ae7dd3d6cf2952dc","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ce5c06e965127314ae7dd3d6cf2952dc"} gateway-1 | {"time_local":"24/Jul/2024:16:17:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ce5c06e965127314ae7dd3d6cf2952dc"} device-1 | {"level":"info","message":"GET /devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b? 200 19ms","method":"GET","requestID":"ce5c06e965127314ae7dd3d6cf2952dc","responseTime":19,"status":200,"url":"/devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2NH0.m6q96G0tykCWOsZYwXNOkUR7OcPcVWsm16TmKOWrXT4","level":"info","message":"auth send jwt","requestID":"c0d12c56c910045246cdc31ab6f21e44"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c0d12c56c910045246cdc31ab6f21e44","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"c0d12c56c910045246cdc31ab6f21e44"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":188,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:44Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":188,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.791196,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:44Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"c0d12c56c910045246cdc31ab6f21e44","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837864,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2NH0.m6q96G0tykCWOsZYwXNOkUR7OcPcVWsm16TmKOWrXT4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c0d12c56c910045246cdc31ab6f21e44","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/479b963c-3038-45ac-a4f8-cda7dd5b26d1"},"level":"info","message":"Attempting to run experiment","requestID":"c0d12c56c910045246cdc31ab6f21e44"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/479b963c-3038-45ac-a4f8-cda7dd5b26d1"},"level":"info","message":"Attempting to book experiment","requestID":"c0d12c56c910045246cdc31ab6f21e44"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/479b963c-3038-45ac-a4f8-cda7dd5b26d1"},"level":"info","message":"Successfully booked experiment","requestID":"c0d12c56c910045246cdc31ab6f21e44"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"426a21b0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"426a6fd0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":189,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:44Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":189,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.899573,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:44Z"} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Received request.","req_id":190,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c675f5fb-9215-430b-8622-14c35c36b8b7","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"426a21b0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/c675f5fb-9215-430b-8622-14c35c36b8b7","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837864,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2NH0.m6q96G0tykCWOsZYwXNOkUR7OcPcVWsm16TmKOWrXT4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"426a21b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Sent response.","req_id":190,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.042618,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"426a6fd0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837864,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2NH0.m6q96G0tykCWOsZYwXNOkUR7OcPcVWsm16TmKOWrXT4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"426a6fd0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc675f5fb-9215-430b-8622-14c35c36b8b7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc675f5fb-9215-430b-8622-14c35c36b8b7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:42.577194512Z"}]},"request_id":"cf9fd5ed-af43-45f6-bc6a-5861a21429f6","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837864.7909844} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"426a21b0-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28f39717-5de0-4aa8-b4a9-2ad590bcc93b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28f39717-5de0-4aa8-b4a9-2ad590bcc93b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:42.624955979Z"}]},"request_id":"361d2ee0-a84c-4a37-b098-9a3ae8caf5b1","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837864.7928507} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"426a6fd0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"426a21b0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/c675f5fb-9215-430b-8622-14c35c36b8b7? 200 20ms","method":"GET","requestID":"426a21b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":20,"status":200,"url":"/devices/c675f5fb-9215-430b-8622-14c35c36b8b7?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"426a6fd0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b? 200 19ms","method":"GET","requestID":"426a6fd0-49d8-11ef-9fe8-9113c2c8d024","responseTime":19,"status":200,"url":"/devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/479b963c-3038-45ac-a4f8-cda7dd5b26d1"},"level":"info","message":"Setting up experiment","requestID":"c0d12c56c910045246cdc31ab6f21e44"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/479b963c-3038-45ac-a4f8-cda7dd5b26d1"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"c0d12c56c910045246cdc31ab6f21e44"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/479b963c-3038-45ac-a4f8-cda7dd5b26d1"},"level":"info","message":"Successfully locked booking for experiment","requestID":"c0d12c56c910045246cdc31ab6f21e44"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/479b963c-3038-45ac-a4f8-cda7dd5b26d1"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"c0d12c56c910045246cdc31ab6f21e44"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/479b963c-3038-45ac-a4f8-cda7dd5b26d1"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"c0d12c56c910045246cdc31ab6f21e44"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/479b963c-3038-45ac-a4f8-cda7dd5b26d1"},"level":"info","message":"Attempting to update booking for experiment","requestID":"c0d12c56c910045246cdc31ab6f21e44"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/479b963c-3038-45ac-a4f8-cda7dd5b26d1"},"level":"info","message":"Successfully updated booking for experiment","requestID":"c0d12c56c910045246cdc31ab6f21e44"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/479b963c-3038-45ac-a4f8-cda7dd5b26d1"},"level":"info","message":"Successfully set up experiment","requestID":"c0d12c56c910045246cdc31ab6f21e44"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"42782b70-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4278a0a0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4278eec0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":191,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:44Z"} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Received request.","req_id":192,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:44Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/479b963c-3038-45ac-a4f8-cda7dd5b26d1"},"level":"info","message":"Successfully running experiment","requestID":"c0d12c56c910045246cdc31ab6f21e44"} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Sent response.","req_id":192,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.956847,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:44Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":191,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":4.003806,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4278a0a0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837864,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2NH0.m6q96G0tykCWOsZYwXNOkUR7OcPcVWsm16TmKOWrXT4"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"4278a0a0-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c675f5fb-9215-430b-8622-14c35c36b8b7","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"42782b70-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/c675f5fb-9215-430b-8622-14c35c36b8b7","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837864,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2NH0.m6q96G0tykCWOsZYwXNOkUR7OcPcVWsm16TmKOWrXT4"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"42782b70-49d8-11ef-9fe8-9113c2c8d024","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":193,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:44Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":193,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.530261,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:44Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc675f5fb-9215-430b-8622-14c35c36b8b7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7e58c49a-b6a2-47b9-9a86-7467ac3ffb84","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837864.8899486} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28f39717-5de0-4aa8-b4a9-2ad590bcc93b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28f39717-5de0-4aa8-b4a9-2ad590bcc93b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:42.624955979Z"}]},"request_id":"834226a3-2f67-4008-a100-99f80c1c2d6c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837864.8913577} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc675f5fb-9215-430b-8622-14c35c36b8b7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc675f5fb-9215-430b-8622-14c35c36b8b7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:42.577194512Z"}]},"request_id":"071e77fa-7b3b-46a0-8547-3a4322418cee","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837864.893183} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c675f5fb-9215-430b-8622-14c35c36b8b7","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4278eec0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c675f5fb-9215-430b-8622-14c35c36b8b7","object_type":"device","rebac_allow":false,"scope_allow":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":"4278eec0-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"4278a0a0-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"42782b70-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4278eec0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/c675f5fb-9215-430b-8622-14c35c36b8b7/signaling 200 25ms","method":"POST","requestID":"4278eec0-49d8-11ef-9fe8-9113c2c8d024","responseTime":25,"status":200,"url":"/devices/c675f5fb-9215-430b-8622-14c35c36b8b7/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4278a0a0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b? 200 28ms","method":"GET","requestID":"4278a0a0-49d8-11ef-9fe8-9113c2c8d024","responseTime":28,"status":200,"url":"/devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"42782b70-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/c675f5fb-9215-430b-8622-14c35c36b8b7? 200 32ms","method":"GET","requestID":"42782b70-49d8-11ef-9fe8-9113c2c8d024","responseTime":32,"status":200,"url":"/devices/c675f5fb-9215-430b-8622-14c35c36b8b7?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"427d3480-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"427da9b0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":194,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:44Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28f39717-5de0-4aa8-b4a9-2ad590bcc93b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3bf813b5-54d4-4ece-a352-2b0788a923bf","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837864.9102018} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F479b963c-3038-45ac-a4f8-cda7dd5b26d1#owner@http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F479b963c-3038-45ac-a4f8-cda7dd5b26d1","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"6098c4cf-7f31-45bc-a5e8-6189b1e92071","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837864.9108315} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3f613c7f-2e3d-4bb0-bfa9-32211c68e1a7","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837864.9112048} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":194,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.299581,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:44Z"} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Received request.","req_id":195,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"427d3480-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b","object_type":"device","rebac_allow":false,"scope_allow":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":"427d3480-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 28ms","method":"POST","requestID":"c0d12c56c910045246cdc31ab6f21e44","responseTime":28,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:40448","level":"info","msg":"Sent response.","req_id":195,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.17957,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:44Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc675f5fb-9215-430b-8622-14c35c36b8b7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ada08b34-f15f-4d0d-a16c-1f51248c3c55","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837864.9137456} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c675f5fb-9215-430b-8622-14c35c36b8b7","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"427da9b0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c675f5fb-9215-430b-8622-14c35c36b8b7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"427da9b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"427d3480-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b/signaling 200 13ms","method":"POST","requestID":"427d3480-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"427da9b0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/c675f5fb-9215-430b-8622-14c35c36b8b7/signaling 200 14ms","method":"POST","requestID":"427da9b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":14,"status":200,"url":"/devices/c675f5fb-9215-430b-8622-14c35c36b8b7/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"42808fe0-49d8-11ef-9fe8-9113c2c8d024"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/479b963c-3038-45ac-a4f8-cda7dd5b26d1","user":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"c0d12c56c910045246cdc31ab6f21e44"} gateway-1 | {"time_local":"24/Jul/2024:16:17:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"811","request_time":"0.206","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c0d12c56c910045246cdc31ab6f21e44"} experiment-1 | {"level":"info","message":"POST /experiments? 201 199ms","method":"POST","requestID":"c0d12c56c910045246cdc31ab6f21e44","responseTime":199,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":196,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:44Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28f39717-5de0-4aa8-b4a9-2ad590bcc93b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aa2896b9-03d1-44aa-a6d6-3f384fa9cdf3","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837864.9317262} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":196,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.579142,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:44Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2NH0.m6q96G0tykCWOsZYwXNOkUR7OcPcVWsm16TmKOWrXT4","level":"info","message":"auth send jwt","requestID":"9fb5063f1f0b5df0b0595fd50b45632f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9fb5063f1f0b5df0b0595fd50b45632f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9fb5063f1f0b5df0b0595fd50b45632f"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"42808fe0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b","object_type":"device","rebac_allow":false,"scope_allow":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":"42808fe0-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":197,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:44Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"42808fe0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":197,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.695138,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:44Z"} device-1 | {"level":"info","message":"POST /devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b/signaling 200 13ms","method":"POST","requestID":"42808fe0-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c675f5fb-9215-430b-8622-14c35c36b8b7","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"9fb5063f1f0b5df0b0595fd50b45632f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/c675f5fb-9215-430b-8622-14c35c36b8b7","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837864,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2NH0.m6q96G0tykCWOsZYwXNOkUR7OcPcVWsm16TmKOWrXT4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/479b963c-3038-45ac-a4f8-cda7dd5b26d1"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"c0d12c56c910045246cdc31ab6f21e44"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/479b963c-3038-45ac-a4f8-cda7dd5b26d1"},"level":"info","message":"Building connection plan","requestID":"c0d12c56c910045246cdc31ab6f21e44"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9fb5063f1f0b5df0b0595fd50b45632f","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"10d5b185-1487-48bb-8902-077906adc15c"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"910ca314-cc1c-40e3-b6b5-a480e1de9c6b"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"863def5f-0eff-45cd-bd10-23be91dc730e"}]},"level":"info","message":"Built pairwise service configurations","requestID":"c0d12c56c910045246cdc31ab6f21e44"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/c675f5fb-9215-430b-8622-14c35c36b8b7"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"c0d12c56c910045246cdc31ab6f21e44"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"428327f0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc675f5fb-9215-430b-8622-14c35c36b8b7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc675f5fb-9215-430b-8622-14c35c36b8b7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:42.577194512Z"}]},"request_id":"7766b4c0-f40b-4907-ad4e-d13cc64414d0","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837864.9446359} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"9fb5063f1f0b5df0b0595fd50b45632f","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":198,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:44Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":198,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.868283,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:44Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"428327f0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837864,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2NH0.m6q96G0tykCWOsZYwXNOkUR7OcPcVWsm16TmKOWrXT4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"428327f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9fb5063f1f0b5df0b0595fd50b45632f"} gateway-1 | {"time_local":"24/Jul/2024:16:17:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c675f5fb-9215-430b-8622-14c35c36b8b7? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9fb5063f1f0b5df0b0595fd50b45632f"} device-1 | {"level":"info","message":"GET /devices/c675f5fb-9215-430b-8622-14c35c36b8b7? 200 17ms","method":"GET","requestID":"9fb5063f1f0b5df0b0595fd50b45632f","responseTime":17,"status":200,"url":"/devices/c675f5fb-9215-430b-8622-14c35c36b8b7?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2NH0.m6q96G0tykCWOsZYwXNOkUR7OcPcVWsm16TmKOWrXT4","level":"info","message":"auth send jwt","requestID":"e65a89b956bd6e12f805c42c46ba6193"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e65a89b956bd6e12f805c42c46ba6193","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e65a89b956bd6e12f805c42c46ba6193"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","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%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"b9f637eb-4843-4c43-a089-cbb42626d4ab","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837864.9574373} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d84dd2b0-d048-4689-bba5-1f820691a07a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837864.9576738} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"428327f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":199,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:44Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":199,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.727376,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"e65a89b956bd6e12f805c42c46ba6193","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837864,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2NH0.m6q96G0tykCWOsZYwXNOkUR7OcPcVWsm16TmKOWrXT4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e65a89b956bd6e12f805c42c46ba6193","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28f39717-5de0-4aa8-b4a9-2ad590bcc93b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28f39717-5de0-4aa8-b4a9-2ad590bcc93b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:42.624955979Z"}]},"request_id":"55ebd319-7063-4418-842a-2b2e3ff44c21","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837864.9672585} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e65a89b956bd6e12f805c42c46ba6193","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"428327f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"428327f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/fe681ffc-ef83-40d4-8c5f-ad7172bfd771'","requestID":"428327f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/fe681ffc-ef83-40d4-8c5f-ad7172bfd771'","requestID":"428327f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"428327f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 30ms","method":"POST","requestID":"428327f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":30,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e65a89b956bd6e12f805c42c46ba6193"} gateway-1 | {"time_local":"24/Jul/2024:16:17:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e65a89b956bd6e12f805c42c46ba6193"} device-1 | {"level":"info","message":"GET /devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b? 200 17ms","method":"GET","requestID":"e65a89b956bd6e12f805c42c46ba6193","responseTime":17,"status":200,"url":"/devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"428327f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/fe681ffc-ef83-40d4-8c5f-ad7172bfd771","device":"28f39717-5de0-4aa8-b4a9-2ad590bcc93b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/479b963c-3038-45ac-a4f8-cda7dd5b26d1"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"c0d12c56c910045246cdc31ab6f21e44"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"428c0190-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":200,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:45Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc675f5fb-9215-430b-8622-14c35c36b8b7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9758ec01-017c-4ffc-8911-e1c3df81312f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837865.0060604} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":200,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.197328,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c675f5fb-9215-430b-8622-14c35c36b8b7","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"428c0190-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c675f5fb-9215-430b-8622-14c35c36b8b7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"428c0190-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"428c0190-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/c675f5fb-9215-430b-8622-14c35c36b8b7/signaling 200 9ms","method":"POST","requestID":"428c0190-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/devices/c675f5fb-9215-430b-8622-14c35c36b8b7/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"428daf40-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":201,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:45Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28f39717-5de0-4aa8-b4a9-2ad590bcc93b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dc1d919e-c88b-45ba-8d08-86669d21f385","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837865.0175326} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":201,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.293554,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"428daf40-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"428daf40-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"428daf40-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b/signaling 200 10ms","method":"POST","requestID":"428daf40-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b/signaling"} device-1 | {"device":"28f39717-5de0-4aa8-b4a9-2ad590bcc93b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"28f39717-5de0-4aa8-b4a9-2ad590bcc93b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"c675f5fb-9215-430b-8622-14c35c36b8b7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"fe681ffc-ef83-40d4-8c5f-ad7172bfd771","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 4728194877272155051 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:Qbn3\r\na=ice-pwd:aowD3aPZTpMROqzz/3hle7Y+\r\na=ice-options:trickle\r\na=fingerprint:sha-256 A6:69:79:9C:E3:92:DF:6D:4C:42:EF:FA:7B:69:86:37:F1:11:D4:BB:FE:3B:8E:E5:C3:03:DE:BD:C9:7F:E6:C0\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"28f39717-5de0-4aa8-b4a9-2ad590bcc93b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:2670394792 1 udp 2113937151 63174ad3-0c2f-4636-9985-b61224a8f30d.local 53593 typ host generation 0 ufrag Qbn3 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"28f39717-5de0-4aa8-b4a9-2ad590bcc93b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"28f39717-5de0-4aa8-b4a9-2ad590bcc93b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:453482455 1 udp 1677729535 141.24.211.56 53593 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag Qbn3 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"28f39717-5de0-4aa8-b4a9-2ad590bcc93b","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/fe681ffc-ef83-40d4-8c5f-ad7172bfd771' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"fe681ffc-ef83-40d4-8c5f-ad7172bfd771","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"922070370eca0f70dc68ec2ed110ad62","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"922070370eca0f70dc68ec2ed110ad62","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/28f39717-5de0-4aa8-b4a9-2ad590bcc93b'"} device-1 | {"device":"c675f5fb-9215-430b-8622-14c35c36b8b7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c675f5fb-9215-430b-8622-14c35c36b8b7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c675f5fb-9215-430b-8622-14c35c36b8b7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"28f39717-5de0-4aa8-b4a9-2ad590bcc93b","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":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/c675f5fb-9215-430b-8622-14c35c36b8b7"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/fe681ffc-ef83-40d4-8c5f-ad7172bfd771"}}},"level":"info","message":"received a callback","requestID":"922070370eca0f70dc68ec2ed110ad62"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"922070370eca0f70dc68ec2ed110ad62","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:17: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.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"922070370eca0f70dc68ec2ed110ad62"} device-1 | {"device":"c675f5fb-9215-430b-8622-14c35c36b8b7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c675f5fb-9215-430b-8622-14c35c36b8b7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"28f39717-5de0-4aa8-b4a9-2ad590bcc93b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"28f39717-5de0-4aa8-b4a9-2ad590bcc93b","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"fe681ffc-ef83-40d4-8c5f-ad7172bfd771","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"fe681ffc-ef83-40d4-8c5f-ad7172bfd771","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/fe681ffc-ef83-40d4-8c5f-ad7172bfd771' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"fe681ffc-ef83-40d4-8c5f-ad7172bfd771","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"17558ff657c3f2f2c6b114f4e3a6ef02","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"17558ff657c3f2f2c6b114f4e3a6ef02","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c675f5fb-9215-430b-8622-14c35c36b8b7"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/fe681ffc-ef83-40d4-8c5f-ad7172bfd771"}}},"level":"info","message":"received a callback","requestID":"17558ff657c3f2f2c6b114f4e3a6ef02"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"43ea3200-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":202,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:47Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ffe681ffc-ef83-40d4-8c5f-ad7172bfd771","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bd20670d-254a-405a-b27e-84889fd2e496","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837867.3040783} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":202,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.928832,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/fe681ffc-ef83-40d4-8c5f-ad7172bfd771","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"43ea3200-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/fe681ffc-ef83-40d4-8c5f-ad7172bfd771","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":"43ea3200-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"43ea3200-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /peerconnections/fe681ffc-ef83-40d4-8c5f-ad7172bfd771 200 119ms","method":"GET","requestID":"43ea3200-49d8-11ef-9fe8-9113c2c8d024","responseTime":119,"status":200,"url":"/peerconnections/fe681ffc-ef83-40d4-8c5f-ad7172bfd771"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 266ms","method":"POST","requestID":"17558ff657c3f2f2c6b114f4e3a6ef02","responseTime":266,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:17: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.272","http_referrer":"","http_user_agent":"node-fetch","requestID":"17558ff657c3f2f2c6b114f4e3a6ef02"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"44116910-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":203,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:47Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28f39717-5de0-4aa8-b4a9-2ad590bcc93b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"19aa5605-e39e-409b-b11d-4e022dd04386","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837867.562641} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":203,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.403908,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"44116910-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b","object_type":"device","rebac_allow":false,"scope_allow":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":"44116910-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"44116910-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b/signaling 200 18ms","method":"POST","requestID":"44116910-49d8-11ef-9fe8-9113c2c8d024","responseTime":18,"status":200,"url":"/devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4414c470-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":204,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:47Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc675f5fb-9215-430b-8622-14c35c36b8b7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eb4665e3-3819-49f1-bc8e-cf2345bacf5e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837867.58373} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":204,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.871048,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c675f5fb-9215-430b-8622-14c35c36b8b7","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4414c470-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c675f5fb-9215-430b-8622-14c35c36b8b7","object_type":"device","rebac_allow":false,"scope_allow":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":"4414c470-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4414c470-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/c675f5fb-9215-430b-8622-14c35c36b8b7/signaling 200 16ms","method":"POST","requestID":"4414c470-49d8-11ef-9fe8-9113c2c8d024","responseTime":16,"status":200,"url":"/devices/c675f5fb-9215-430b-8622-14c35c36b8b7/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2N30.Q14_9tOHOWC1Yf89J1a_OGkTAU2aegH_c_ud1gfjUXc","level":"info","message":"auth send jwt","requestID":"b784793e241d0427080baa1822ac5b47"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"b784793e241d0427080baa1822ac5b47","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/479b963c-3038-45ac-a4f8-cda7dd5b26d1","requestID":"b784793e241d0427080baa1822ac5b47"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":205,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:47Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":205,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.279791,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/479b963c-3038-45ac-a4f8-cda7dd5b26d1","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"b784793e241d0427080baa1822ac5b47","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/479b963c-3038-45ac-a4f8-cda7dd5b26d1","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837867,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2N30.Q14_9tOHOWC1Yf89J1a_OGkTAU2aegH_c_ud1gfjUXc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b784793e241d0427080baa1822ac5b47","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/479b963c-3038-45ac-a4f8-cda7dd5b26d1","requestID":"b784793e241d0427080baa1822ac5b47"} gateway-1 | {"time_local":"24/Jul/2024:16:17:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/479b963c-3038-45ac-a4f8-cda7dd5b26d1 HTTP/1.1","status": "200","body_bytes_sent":"884","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b784793e241d0427080baa1822ac5b47"} experiment-1 | {"level":"info","message":"GET /experiments/479b963c-3038-45ac-a4f8-cda7dd5b26d1 200 19ms","method":"GET","requestID":"b784793e241d0427080baa1822ac5b47","responseTime":19,"status":200,"url":"/experiments/479b963c-3038-45ac-a4f8-cda7dd5b26d1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2N30.Q14_9tOHOWC1Yf89J1a_OGkTAU2aegH_c_ud1gfjUXc","level":"info","message":"auth send jwt","requestID":"566beb5b5cb3f86ff3ee4de25cfaea24"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"566beb5b5cb3f86ff3ee4de25cfaea24","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/479b963c-3038-45ac-a4f8-cda7dd5b26d1","requestID":"566beb5b5cb3f86ff3ee4de25cfaea24"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":206,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:47Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":206,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.180653,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:47Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/479b963c-3038-45ac-a4f8-cda7dd5b26d1","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"566beb5b5cb3f86ff3ee4de25cfaea24","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/479b963c-3038-45ac-a4f8-cda7dd5b26d1","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837867,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2N30.Q14_9tOHOWC1Yf89J1a_OGkTAU2aegH_c_ud1gfjUXc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"566beb5b5cb3f86ff3ee4de25cfaea24","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/479b963c-3038-45ac-a4f8-cda7dd5b26d1"},"level":"info","message":"Attempting to finish experiment","requestID":"566beb5b5cb3f86ff3ee4de25cfaea24"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"442f2a40-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":207,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:47Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":207,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.165821,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:47Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/fe681ffc-ef83-40d4-8c5f-ad7172bfd771","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"442f2a40-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:http://localhost/peerconnections/fe681ffc-ef83-40d4-8c5f-ad7172bfd771","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837867,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2N30.Q14_9tOHOWC1Yf89J1a_OGkTAU2aegH_c_ud1gfjUXc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"442f2a40-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/fe681ffc-ef83-40d4-8c5f-ad7172bfd771","device":"28f39717-5de0-4aa8-b4a9-2ad590bcc93b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"c675f5fb-9215-430b-8622-14c35c36b8b7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c675f5fb-9215-430b-8622-14c35c36b8b7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c675f5fb-9215-430b-8622-14c35c36b8b7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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/fe681ffc-ef83-40d4-8c5f-ad7172bfd771' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/fe681ffc-ef83-40d4-8c5f-ad7172bfd771' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"fe681ffc-ef83-40d4-8c5f-ad7172bfd771","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ffe681ffc-ef83-40d4-8c5f-ad7172bfd771': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ffe681ffc-ef83-40d4-8c5f-ad7172bfd771","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"3ee8a043-75bd-4183-a1d3-23cc78cac987","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837867.7771654} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d56d4ea2-f5b3-4999-8a63-0399dd2bdec9","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837867.7777522} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bf5f4c747ea1c4996f7cca466d3c7ebd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"bf5f4c747ea1c4996f7cca466d3c7ebd","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c675f5fb-9215-430b-8622-14c35c36b8b7"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/fe681ffc-ef83-40d4-8c5f-ad7172bfd771"}}},"level":"info","message":"received a callback","requestID":"bf5f4c747ea1c4996f7cca466d3c7ebd"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"442f2a40-49d8-11ef-9fe8-9113c2c8d024","responseTime":23,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e79f518c75134b68ff467e3088a9b7ca","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"e79f518c75134b68ff467e3088a9b7ca","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c675f5fb-9215-430b-8622-14c35c36b8b7"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/fe681ffc-ef83-40d4-8c5f-ad7172bfd771"}}},"level":"info","message":"received a callback","requestID":"e79f518c75134b68ff467e3088a9b7ca"} device-1 | {"data":{"peerconnection":"fe681ffc-ef83-40d4-8c5f-ad7172bfd771","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"442f2a40-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"DELETE /peerconnections/fe681ffc-ef83-40d4-8c5f-ad7172bfd771 204 65ms","method":"DELETE","requestID":"442f2a40-49d8-11ef-9fe8-9113c2c8d024","responseTime":65,"status":204,"url":"/peerconnections/fe681ffc-ef83-40d4-8c5f-ad7172bfd771"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/479b963c-3038-45ac-a4f8-cda7dd5b26d1"},"level":"info","message":"Successfully finished experiment","requestID":"566beb5b5cb3f86ff3ee4de25cfaea24"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"443da930-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":208,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:47Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28f39717-5de0-4aa8-b4a9-2ad590bcc93b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a6a6f9af-8af4-4651-9141-7872fca3e41a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837867.8505983} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":208,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.062194,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"443da930-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b","object_type":"device","rebac_allow":false,"scope_allow":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":"443da930-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F479b963c-3038-45ac-a4f8-cda7dd5b26d1': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F479b963c-3038-45ac-a4f8-cda7dd5b26d1","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"617e18f7-8445-48d2-b120-4e92fa3fb12a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837867.8542192} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9897ee51-b0b5-495c-85a5-f103afa68814","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837867.854716} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"566beb5b5cb3f86ff3ee4de25cfaea24","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"443da930-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b/signaling 200 17ms","method":"POST","requestID":"443da930-49d8-11ef-9fe8-9113c2c8d024","responseTime":17,"status":200,"url":"/devices/28f39717-5de0-4aa8-b4a9-2ad590bcc93b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4440b670-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":209,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:47Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc675f5fb-9215-430b-8622-14c35c36b8b7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0611339a-af85-4e45-95c7-02f337210163","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837867.8704073} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":209,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.368916,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c675f5fb-9215-430b-8622-14c35c36b8b7","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4440b670-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c675f5fb-9215-430b-8622-14c35c36b8b7","object_type":"device","rebac_allow":false,"scope_allow":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":"4440b670-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4440b670-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/c675f5fb-9215-430b-8622-14c35c36b8b7/signaling 200 14ms","method":"POST","requestID":"4440b670-49d8-11ef-9fe8-9113c2c8d024","responseTime":14,"status":200,"url":"/devices/c675f5fb-9215-430b-8622-14c35c36b8b7/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/479b963c-3038-45ac-a4f8-cda7dd5b26d1","requestID":"566beb5b5cb3f86ff3ee4de25cfaea24"} gateway-1 | {"time_local":"24/Jul/2024:16:17:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/479b963c-3038-45ac-a4f8-cda7dd5b26d1 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.202","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"566beb5b5cb3f86ff3ee4de25cfaea24"} gateway-1 | {"time_local":"24/Jul/2024:16:17:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2597","request_time":"4.734","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"2061d20402cb4bd1234c905ea011c349"} experiment-1 | {"level":"info","message":"DELETE /experiments/479b963c-3038-45ac-a4f8-cda7dd5b26d1 204 198ms","method":"DELETE","requestID":"566beb5b5cb3f86ff3ee4de25cfaea24","responseTime":198,"status":204,"url":"/experiments/479b963c-3038-45ac-a4f8-cda7dd5b26d1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 148ms","method":"POST","requestID":"bf5f4c747ea1c4996f7cca466d3c7ebd","responseTime":148,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 139ms","method":"POST","requestID":"e79f518c75134b68ff467e3088a9b7ca","responseTime":139,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:17: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.154","http_referrer":"","http_user_agent":"node-fetch","requestID":"bf5f4c747ea1c4996f7cca466d3c7ebd"} gateway-1 | {"time_local":"24/Jul/2024:16:17: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.146","http_referrer":"","http_user_agent":"node-fetch","requestID":"e79f518c75134b68ff467e3088a9b7ca"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2N30.Q14_9tOHOWC1Yf89J1a_OGkTAU2aegH_c_ud1gfjUXc","level":"info","message":"auth send jwt","requestID":"9ce53ff903e7e92879c01cacfa537e6f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"9ce53ff903e7e92879c01cacfa537e6f","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"9ce53ff903e7e92879c01cacfa537e6f"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":210,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:47Z"} gateway-1 | {"time_local":"24/Jul/2024:16:17:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2506","request_time":"3.290","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c0a3e6ff5c0ed7fe6d1710c262ff587a"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":210,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.970283,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:47Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"9ce53ff903e7e92879c01cacfa537e6f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837867,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2N30.Q14_9tOHOWC1Yf89J1a_OGkTAU2aegH_c_ud1gfjUXc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9ce53ff903e7e92879c01cacfa537e6f","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/c675f5fb-9215-430b-8622-14c35c36b8b7' 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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c32d5c7-e048-406d-8583-229273f25431","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"bdad48eb-e73c-4520-987d-76249fed0bb4","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837867.958373} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9ce53ff903e7e92879c01cacfa537e6f","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/28f39717-5de0-4aa8-b4a9-2ad590bcc93b' 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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e68bc390-929e-464c-a9e3-737ae0f15028","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837867.965275} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"9ce53ff903e7e92879c01cacfa537e6f","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c32d5c7-e048-406d-8583-229273f25431","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"24ae8f15-2576-4a0e-b23b-bd674417169c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837867.975963} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7615506d-7f31-46e7-9d6b-223028cf0117","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837867.9761717} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"9ce53ff903e7e92879c01cacfa537e6f","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c32d5c7-e048-406d-8583-229273f25431","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c32d5c7-e048-406d-8583-229273f25431","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:47.975943866Z"}]},"request_id":"3da112b2-4ef5-4a79-9d87-386e6067fe12","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837867.980928} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9ce53ff903e7e92879c01cacfa537e6f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"9ce53ff903e7e92879c01cacfa537e6f"} gateway-1 | {"time_local":"24/Jul/2024:16:17:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9ce53ff903e7e92879c01cacfa537e6f"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"9ce53ff903e7e92879c01cacfa537e6f","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2N30.Q14_9tOHOWC1Yf89J1a_OGkTAU2aegH_c_ud1gfjUXc","level":"info","message":"auth send jwt","requestID":"7001fb9c71474c94222015efaf6d0ea2"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7001fb9c71474c94222015efaf6d0ea2","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"7001fb9c71474c94222015efaf6d0ea2"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":211,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:47Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":211,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.801244,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:47Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"7001fb9c71474c94222015efaf6d0ea2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837867,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2N30.Q14_9tOHOWC1Yf89J1a_OGkTAU2aegH_c_ud1gfjUXc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7001fb9c71474c94222015efaf6d0ea2","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff96297db-a191-4c64-9eab-3817169d0a9b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"fc7ce762-5b28-4528-ac8c-9621e5394400","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837868.0043907} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7001fb9c71474c94222015efaf6d0ea2","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f0bd7695-b651-4e12-92cd-1a58c0623182","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837868.0094485} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"7001fb9c71474c94222015efaf6d0ea2","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff96297db-a191-4c64-9eab-3817169d0a9b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"98563d04-02d9-4f92-afcf-5a164ce5c0c3","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837868.0251563} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c4686512-bbea-432f-9787-68c140d58fe9","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837868.025397} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"7001fb9c71474c94222015efaf6d0ea2","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff96297db-a191-4c64-9eab-3817169d0a9b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff96297db-a191-4c64-9eab-3817169d0a9b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:48.025140543Z"}]},"request_id":"a959e13b-9f27-4884-8589-edb34cb8656e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837868.0303123} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7001fb9c71474c94222015efaf6d0ea2","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"7001fb9c71474c94222015efaf6d0ea2"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"7001fb9c71474c94222015efaf6d0ea2","responseTime":43,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Jul/2024:16:17:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7001fb9c71474c94222015efaf6d0ea2"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"be51e6b820e016ad144a5ea9169e63a3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"be51e6b820e016ad144a5ea9169e63a3","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Jul/2024:16:17:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/4c32d5c7-e048-406d-8583-229273f25431/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":"be51e6b820e016ad144a5ea9169e63a3"} device-1 | {"level":"info","message":"OPTIONS /devices/4c32d5c7-e048-406d-8583-229273f25431/websocket 200 1ms","method":"OPTIONS","requestID":"be51e6b820e016ad144a5ea9169e63a3","responseTime":1,"status":200,"url":"/devices/4c32d5c7-e048-406d-8583-229273f25431/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2OX0.n7LeOtJs7w2fD89YHy7AncTsvHr3RHkrk6Ys7qxKH8w","level":"info","message":"auth send jwt","requestID":"41c0f4f1093aa71e6bfff48a0fe2af38"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"41c0f4f1093aa71e6bfff48a0fe2af38","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"41c0f4f1093aa71e6bfff48a0fe2af38"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7753fcfa8fda583d4044a088007f1262","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"7753fcfa8fda583d4044a088007f1262","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Jul/2024:16:17:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/f96297db-a191-4c64-9eab-3817169d0a9b/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":"7753fcfa8fda583d4044a088007f1262"} device-1 | {"level":"info","message":"OPTIONS /devices/f96297db-a191-4c64-9eab-3817169d0a9b/websocket 200 1ms","method":"OPTIONS","requestID":"7753fcfa8fda583d4044a088007f1262","responseTime":1,"status":200,"url":"/devices/f96297db-a191-4c64-9eab-3817169d0a9b/websocket"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":212,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":212,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.764666,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4c32d5c7-e048-406d-8583-229273f25431","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"41c0f4f1093aa71e6bfff48a0fe2af38","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/4c32d5c7-e048-406d-8583-229273f25431","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837869,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg2OX0.n7LeOtJs7w2fD89YHy7AncTsvHr3RHkrk6Ys7qxKH8w"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"41c0f4f1093aa71e6bfff48a0fe2af38","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3MH0.nO2maXsuGIk8nonjvvnCdMre1bSmO6HOjN_S9yNAOaQ","level":"info","message":"auth send jwt","requestID":"2f6f5339ad9eef4154b1a17625ab7cc8"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"2f6f5339ad9eef4154b1a17625ab7cc8","responseTime":8,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"2f6f5339ad9eef4154b1a17625ab7cc8"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":213,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":213,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.265997,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f96297db-a191-4c64-9eab-3817169d0a9b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"2f6f5339ad9eef4154b1a17625ab7cc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/f96297db-a191-4c64-9eab-3817169d0a9b","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837870,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3MH0.nO2maXsuGIk8nonjvvnCdMre1bSmO6HOjN_S9yNAOaQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2f6f5339ad9eef4154b1a17625ab7cc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"41c0f4f1093aa71e6bfff48a0fe2af38"} device-1 | {"level":"info","message":"POST /devices/4c32d5c7-e048-406d-8583-229273f25431/websocket 200 28ms","method":"POST","requestID":"41c0f4f1093aa71e6bfff48a0fe2af38","responseTime":28,"status":200,"url":"/devices/4c32d5c7-e048-406d-8583-229273f25431/websocket"} gateway-1 | {"time_local":"24/Jul/2024:16:17:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/4c32d5c7-e048-406d-8583-229273f25431/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":"41c0f4f1093aa71e6bfff48a0fe2af38"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"2f6f5339ad9eef4154b1a17625ab7cc8"} gateway-1 | {"time_local":"24/Jul/2024:16:17:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/f96297db-a191-4c64-9eab-3817169d0a9b/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":"2f6f5339ad9eef4154b1a17625ab7cc8"} device-1 | {"level":"info","message":"POST /devices/f96297db-a191-4c64-9eab-3817169d0a9b/websocket 200 24ms","method":"POST","requestID":"2f6f5339ad9eef4154b1a17625ab7cc8","responseTime":24,"status":200,"url":"/devices/f96297db-a191-4c64-9eab-3817169d0a9b/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/4c32d5c7-e048-406d-8583-229273f25431' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/f96297db-a191-4c64-9eab-3817169d0a9b' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3MH0.nO2maXsuGIk8nonjvvnCdMre1bSmO6HOjN_S9yNAOaQ","level":"info","message":"auth send jwt","requestID":"24eb95e92818fd708bd2cae492799f6c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"24eb95e92818fd708bd2cae492799f6c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"24eb95e92818fd708bd2cae492799f6c"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":214,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":214,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.254049,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4c32d5c7-e048-406d-8583-229273f25431","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"24eb95e92818fd708bd2cae492799f6c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/4c32d5c7-e048-406d-8583-229273f25431","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837870,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3MH0.nO2maXsuGIk8nonjvvnCdMre1bSmO6HOjN_S9yNAOaQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"24eb95e92818fd708bd2cae492799f6c","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c32d5c7-e048-406d-8583-229273f25431","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c32d5c7-e048-406d-8583-229273f25431","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:47.975943866Z"}]},"request_id":"8309d79d-6d57-47a5-b021-5b9a5f18f5ed","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837870.0798368} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"24eb95e92818fd708bd2cae492799f6c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"24eb95e92818fd708bd2cae492799f6c"} gateway-1 | {"time_local":"24/Jul/2024:16:17:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4c32d5c7-e048-406d-8583-229273f25431? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"24eb95e92818fd708bd2cae492799f6c"} device-1 | {"level":"info","message":"GET /devices/4c32d5c7-e048-406d-8583-229273f25431? 200 16ms","method":"GET","requestID":"24eb95e92818fd708bd2cae492799f6c","responseTime":16,"status":200,"url":"/devices/4c32d5c7-e048-406d-8583-229273f25431?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3MH0.nO2maXsuGIk8nonjvvnCdMre1bSmO6HOjN_S9yNAOaQ","level":"info","message":"auth send jwt","requestID":"acbfcd1a05f0ae3493f9b3775403f424"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"acbfcd1a05f0ae3493f9b3775403f424","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"acbfcd1a05f0ae3493f9b3775403f424"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":215,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":215,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.053829,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f96297db-a191-4c64-9eab-3817169d0a9b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"acbfcd1a05f0ae3493f9b3775403f424","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/f96297db-a191-4c64-9eab-3817169d0a9b","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837870,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3MH0.nO2maXsuGIk8nonjvvnCdMre1bSmO6HOjN_S9yNAOaQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"acbfcd1a05f0ae3493f9b3775403f424","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff96297db-a191-4c64-9eab-3817169d0a9b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff96297db-a191-4c64-9eab-3817169d0a9b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:48.025140543Z"}]},"request_id":"25c25e85-b865-4114-9d1d-ac0e338a0a51","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837870.0982294} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"acbfcd1a05f0ae3493f9b3775403f424","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"acbfcd1a05f0ae3493f9b3775403f424"} device-1 | {"level":"info","message":"GET /devices/f96297db-a191-4c64-9eab-3817169d0a9b? 200 14ms","method":"GET","requestID":"acbfcd1a05f0ae3493f9b3775403f424","responseTime":14,"status":200,"url":"/devices/f96297db-a191-4c64-9eab-3817169d0a9b?"} gateway-1 | {"time_local":"24/Jul/2024:16:17:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f96297db-a191-4c64-9eab-3817169d0a9b? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"acbfcd1a05f0ae3493f9b3775403f424"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3MH0.nO2maXsuGIk8nonjvvnCdMre1bSmO6HOjN_S9yNAOaQ","level":"info","message":"auth send jwt","requestID":"95d476aa0caf512ed642dc4cb6f2eda0"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"95d476aa0caf512ed642dc4cb6f2eda0","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"95d476aa0caf512ed642dc4cb6f2eda0"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":216,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":216,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.685923,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"95d476aa0caf512ed642dc4cb6f2eda0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837870,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3MH0.nO2maXsuGIk8nonjvvnCdMre1bSmO6HOjN_S9yNAOaQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"95d476aa0caf512ed642dc4cb6f2eda0","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d8854a37-da16-449d-a022-3f7489b33186"},"level":"info","message":"Attempting to run experiment","requestID":"95d476aa0caf512ed642dc4cb6f2eda0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d8854a37-da16-449d-a022-3f7489b33186"},"level":"info","message":"Attempting to book experiment","requestID":"95d476aa0caf512ed642dc4cb6f2eda0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d8854a37-da16-449d-a022-3f7489b33186"},"level":"info","message":"Successfully booked experiment","requestID":"95d476aa0caf512ed642dc4cb6f2eda0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"459dae60-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"459e2390-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":217,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":217,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.147257,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4c32d5c7-e048-406d-8583-229273f25431","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"459dae60-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/4c32d5c7-e048-406d-8583-229273f25431","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837870,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3MH0.nO2maXsuGIk8nonjvvnCdMre1bSmO6HOjN_S9yNAOaQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"459dae60-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46174","level":"info","msg":"Received request.","req_id":218,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46174","level":"info","msg":"Sent response.","req_id":218,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.073229,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f96297db-a191-4c64-9eab-3817169d0a9b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"459e2390-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/f96297db-a191-4c64-9eab-3817169d0a9b","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837870,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3MH0.nO2maXsuGIk8nonjvvnCdMre1bSmO6HOjN_S9yNAOaQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"459e2390-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c32d5c7-e048-406d-8583-229273f25431","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c32d5c7-e048-406d-8583-229273f25431","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:47.975943866Z"}]},"request_id":"bbde6082-04a4-4f08-b02f-b6a1a67fe677","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837870.1633909} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"459dae60-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff96297db-a191-4c64-9eab-3817169d0a9b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff96297db-a191-4c64-9eab-3817169d0a9b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:48.025140543Z"}]},"request_id":"5afe1a16-7e20-4643-a148-bf2cacab4fe9","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837870.1691043} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"459dae60-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"459e2390-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/4c32d5c7-e048-406d-8583-229273f25431? 200 21ms","method":"GET","requestID":"459dae60-49d8-11ef-9fe8-9113c2c8d024","responseTime":21,"status":200,"url":"/devices/4c32d5c7-e048-406d-8583-229273f25431?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"459e2390-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/f96297db-a191-4c64-9eab-3817169d0a9b? 200 23ms","method":"GET","requestID":"459e2390-49d8-11ef-9fe8-9113c2c8d024","responseTime":23,"status":200,"url":"/devices/f96297db-a191-4c64-9eab-3817169d0a9b?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d8854a37-da16-449d-a022-3f7489b33186"},"level":"info","message":"Setting up experiment","requestID":"95d476aa0caf512ed642dc4cb6f2eda0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d8854a37-da16-449d-a022-3f7489b33186"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"95d476aa0caf512ed642dc4cb6f2eda0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d8854a37-da16-449d-a022-3f7489b33186"},"level":"info","message":"Successfully locked booking for experiment","requestID":"95d476aa0caf512ed642dc4cb6f2eda0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d8854a37-da16-449d-a022-3f7489b33186"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"95d476aa0caf512ed642dc4cb6f2eda0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d8854a37-da16-449d-a022-3f7489b33186"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"95d476aa0caf512ed642dc4cb6f2eda0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d8854a37-da16-449d-a022-3f7489b33186"},"level":"info","message":"Attempting to update booking for experiment","requestID":"95d476aa0caf512ed642dc4cb6f2eda0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d8854a37-da16-449d-a022-3f7489b33186"},"level":"info","message":"Successfully updated booking for experiment","requestID":"95d476aa0caf512ed642dc4cb6f2eda0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d8854a37-da16-449d-a022-3f7489b33186"},"level":"info","message":"Successfully set up experiment","requestID":"95d476aa0caf512ed642dc4cb6f2eda0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"45a94720-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"45a9bc50-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"45aa0a70-49d8-11ef-9fe8-9113c2c8d024"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d8854a37-da16-449d-a022-3f7489b33186"},"level":"info","message":"Successfully running experiment","requestID":"95d476aa0caf512ed642dc4cb6f2eda0"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":219,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":219,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.339213,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46174","level":"info","msg":"Received request.","req_id":220,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4c32d5c7-e048-406d-8583-229273f25431","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"45a94720-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/4c32d5c7-e048-406d-8583-229273f25431","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837870,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3MH0.nO2maXsuGIk8nonjvvnCdMre1bSmO6HOjN_S9yNAOaQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"45a94720-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46174","level":"info","msg":"Sent response.","req_id":220,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.805085,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f96297db-a191-4c64-9eab-3817169d0a9b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"45a9bc50-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/f96297db-a191-4c64-9eab-3817169d0a9b","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837870,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3MH0.nO2maXsuGIk8nonjvvnCdMre1bSmO6HOjN_S9yNAOaQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"45a9bc50-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":221,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c32d5c7-e048-406d-8583-229273f25431","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"04a21e23-0d83-4e48-bbc5-d3a578cf62eb","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837870.2390916} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":221,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.03026,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4c32d5c7-e048-406d-8583-229273f25431","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"45aa0a70-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4c32d5c7-e048-406d-8583-229273f25431","object_type":"device","rebac_allow":false,"scope_allow":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":"45aa0a70-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff96297db-a191-4c64-9eab-3817169d0a9b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff96297db-a191-4c64-9eab-3817169d0a9b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:48.025140543Z"}]},"request_id":"026d2de7-67b9-4117-9290-356d5c67c552","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837870.2422884} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"45a9bc50-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c32d5c7-e048-406d-8583-229273f25431","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c32d5c7-e048-406d-8583-229273f25431","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:47.975943866Z"}]},"request_id":"5171b4be-9bbb-4b61-b4e5-7b9abdb72166","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837870.245346} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"45a94720-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"45aa0a70-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/4c32d5c7-e048-406d-8583-229273f25431/signaling 200 17ms","method":"POST","requestID":"45aa0a70-49d8-11ef-9fe8-9113c2c8d024","responseTime":17,"status":200,"url":"/devices/4c32d5c7-e048-406d-8583-229273f25431/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"45ad17b0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"45a9bc50-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/f96297db-a191-4c64-9eab-3817169d0a9b? 200 27ms","method":"GET","requestID":"45a9bc50-49d8-11ef-9fe8-9113c2c8d024","responseTime":27,"status":200,"url":"/devices/f96297db-a191-4c64-9eab-3817169d0a9b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"45a94720-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/4c32d5c7-e048-406d-8583-229273f25431? 200 31ms","method":"GET","requestID":"45a94720-49d8-11ef-9fe8-9113c2c8d024","responseTime":31,"status":200,"url":"/devices/4c32d5c7-e048-406d-8583-229273f25431?"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd8854a37-da16-449d-a022-3f7489b33186#owner@http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd8854a37-da16-449d-a022-3f7489b33186","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"05fe5a58-51ba-499d-b710-fdfb27c38d54","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837870.2561376} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"796d544d-cd97-4832-bcb7-302377bf0f41","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837870.2564955} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"95d476aa0caf512ed642dc4cb6f2eda0","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":222,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff96297db-a191-4c64-9eab-3817169d0a9b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f50b1211-20b1-42af-a114-58a78abf4af9","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837870.2591722} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":222,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.725648,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:50Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"45ae7740-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f96297db-a191-4c64-9eab-3817169d0a9b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"45ad17b0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f96297db-a191-4c64-9eab-3817169d0a9b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"45ad17b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":223,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:50Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"45ad17b0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/f96297db-a191-4c64-9eab-3817169d0a9b/signaling 200 14ms","method":"POST","requestID":"45ad17b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":14,"status":200,"url":"/devices/f96297db-a191-4c64-9eab-3817169d0a9b/signaling"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c32d5c7-e048-406d-8583-229273f25431","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d49c87fe-48b8-4450-96b5-6444c3923c06","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837870.2652473} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":223,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.914176,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4c32d5c7-e048-406d-8583-229273f25431","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"45ae7740-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4c32d5c7-e048-406d-8583-229273f25431","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"45ae7740-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/d8854a37-da16-449d-a022-3f7489b33186","user":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"95d476aa0caf512ed642dc4cb6f2eda0"} experiment-1 | {"level":"info","message":"POST /experiments? 201 161ms","method":"POST","requestID":"95d476aa0caf512ed642dc4cb6f2eda0","responseTime":161,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"24/Jul/2024:16:17:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"777","request_time":"0.165","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"95d476aa0caf512ed642dc4cb6f2eda0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"45ae7740-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/4c32d5c7-e048-406d-8583-229273f25431/signaling 200 10ms","method":"POST","requestID":"45ae7740-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/devices/4c32d5c7-e048-406d-8583-229273f25431/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3MH0.nO2maXsuGIk8nonjvvnCdMre1bSmO6HOjN_S9yNAOaQ","level":"info","message":"auth send jwt","requestID":"7cc4f2476b5a2708f35f3fc78b384f2b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"45b07310-49d8-11ef-9fe8-9113c2c8d024"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7cc4f2476b5a2708f35f3fc78b384f2b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7cc4f2476b5a2708f35f3fc78b384f2b"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":224,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46174","level":"info","msg":"Received request.","req_id":225,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff96297db-a191-4c64-9eab-3817169d0a9b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c33a0fb1-ae5e-49bf-b977-5a0f56b35406","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837870.2778916} authorization-1 | {"client_addr":"127.0.0.1:46174","level":"info","msg":"Sent response.","req_id":225,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.947614,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4c32d5c7-e048-406d-8583-229273f25431","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"7cc4f2476b5a2708f35f3fc78b384f2b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/4c32d5c7-e048-406d-8583-229273f25431","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837870,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3MH0.nO2maXsuGIk8nonjvvnCdMre1bSmO6HOjN_S9yNAOaQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7cc4f2476b5a2708f35f3fc78b384f2b","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":224,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.567075,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f96297db-a191-4c64-9eab-3817169d0a9b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"45b07310-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f96297db-a191-4c64-9eab-3817169d0a9b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"45b07310-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c32d5c7-e048-406d-8583-229273f25431","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c32d5c7-e048-406d-8583-229273f25431","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:47.975943866Z"}]},"request_id":"8c4e1ce5-7cf0-4578-82db-6ab34327ae2e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837870.283264} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"45b07310-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7cc4f2476b5a2708f35f3fc78b384f2b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/f96297db-a191-4c64-9eab-3817169d0a9b/signaling 200 11ms","method":"POST","requestID":"45b07310-49d8-11ef-9fe8-9113c2c8d024","responseTime":11,"status":200,"url":"/devices/f96297db-a191-4c64-9eab-3817169d0a9b/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d8854a37-da16-449d-a022-3f7489b33186"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"95d476aa0caf512ed642dc4cb6f2eda0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d8854a37-da16-449d-a022-3f7489b33186"},"level":"info","message":"Building connection plan","requestID":"95d476aa0caf512ed642dc4cb6f2eda0"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"f31ce6cb-0493-4591-baf8-19c154df1482"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"c2758ccd-d78e-41fe-857c-ae059b1ae343"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/file","uuid":"699bfc59-cb8b-4840-913f-e87561d27c66"}]},"level":"info","message":"Built pairwise service configurations","requestID":"95d476aa0caf512ed642dc4cb6f2eda0"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/4c32d5c7-e048-406d-8583-229273f25431"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/f96297db-a191-4c64-9eab-3817169d0a9b"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"95d476aa0caf512ed642dc4cb6f2eda0"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"45b2bd00-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7cc4f2476b5a2708f35f3fc78b384f2b"} gateway-1 | {"time_local":"24/Jul/2024:16:17:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4c32d5c7-e048-406d-8583-229273f25431? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7cc4f2476b5a2708f35f3fc78b384f2b"} device-1 | {"level":"info","message":"GET /devices/4c32d5c7-e048-406d-8583-229273f25431? 200 16ms","method":"GET","requestID":"7cc4f2476b5a2708f35f3fc78b384f2b","responseTime":16,"status":200,"url":"/devices/4c32d5c7-e048-406d-8583-229273f25431?"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":226,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":226,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.914473,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"45b2bd00-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837870,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3MH0.nO2maXsuGIk8nonjvvnCdMre1bSmO6HOjN_S9yNAOaQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"45b2bd00-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3MH0.nO2maXsuGIk8nonjvvnCdMre1bSmO6HOjN_S9yNAOaQ","level":"info","message":"auth send jwt","requestID":"9512d1e915bc69ce163a68eecbcae668"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9512d1e915bc69ce163a68eecbcae668","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9512d1e915bc69ce163a68eecbcae668"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":227,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":227,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.845435,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f96297db-a191-4c64-9eab-3817169d0a9b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"9512d1e915bc69ce163a68eecbcae668","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/f96297db-a191-4c64-9eab-3817169d0a9b","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837870,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3MH0.nO2maXsuGIk8nonjvvnCdMre1bSmO6HOjN_S9yNAOaQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9512d1e915bc69ce163a68eecbcae668","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff96297db-a191-4c64-9eab-3817169d0a9b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff96297db-a191-4c64-9eab-3817169d0a9b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:48.025140543Z"}]},"request_id":"4129b792-2748-4200-838d-867a14d0dddc","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837870.3050752} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9512d1e915bc69ce163a68eecbcae668","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","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%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"9de94702-7082-4aea-b909-72b300e33cfc","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837870.3064313} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e2149334-79ee-44c6-b8c2-665adbdd8df5","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837870.3066573} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"45b2bd00-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9512d1e915bc69ce163a68eecbcae668"} gateway-1 | {"time_local":"24/Jul/2024:16:17:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f96297db-a191-4c64-9eab-3817169d0a9b? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9512d1e915bc69ce163a68eecbcae668"} device-1 | {"level":"info","message":"GET /devices/f96297db-a191-4c64-9eab-3817169d0a9b? 200 13ms","method":"GET","requestID":"9512d1e915bc69ce163a68eecbcae668","responseTime":13,"status":200,"url":"/devices/f96297db-a191-4c64-9eab-3817169d0a9b?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"45b2bd00-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"45b2bd00-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/6ef6bc10-d7ca-4161-a799-c77b8cc96939'","requestID":"45b2bd00-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/6ef6bc10-d7ca-4161-a799-c77b8cc96939'","requestID":"45b2bd00-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"45b2bd00-49d8-11ef-9fe8-9113c2c8d024"} 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":"45b2bd00-49d8-11ef-9fe8-9113c2c8d024","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":"45b2bd00-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/6ef6bc10-d7ca-4161-a799-c77b8cc96939","device":"4c32d5c7-e048-406d-8583-229273f25431","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}],"tiebreaker":false} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/6ef6bc10-d7ca-4161-a799-c77b8cc96939","device":"f96297db-a191-4c64-9eab-3817169d0a9b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}],"tiebreaker":true} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d8854a37-da16-449d-a022-3f7489b33186"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"95d476aa0caf512ed642dc4cb6f2eda0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"45bc0bd0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":228,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c32d5c7-e048-406d-8583-229273f25431","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5572ccc3-3052-4d94-a5bb-eefd0e9e479e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837870.3538563} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":228,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.760707,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4c32d5c7-e048-406d-8583-229273f25431","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"45bc0bd0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4c32d5c7-e048-406d-8583-229273f25431","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"45bc0bd0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"45bc0bd0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/4c32d5c7-e048-406d-8583-229273f25431/signaling 200 9ms","method":"POST","requestID":"45bc0bd0-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/devices/4c32d5c7-e048-406d-8583-229273f25431/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"45bdb980-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":229,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff96297db-a191-4c64-9eab-3817169d0a9b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a6407bc2-2266-4ffe-9f6c-cbfac71f1ac1","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837870.3649063} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":229,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.560274,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f96297db-a191-4c64-9eab-3817169d0a9b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"45bdb980-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f96297db-a191-4c64-9eab-3817169d0a9b","object_type":"device","rebac_allow":false,"scope_allow":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":"45bdb980-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"device":"4c32d5c7-e048-406d-8583-229273f25431","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"45bdb980-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/f96297db-a191-4c64-9eab-3817169d0a9b/signaling 200 12ms","method":"POST","requestID":"45bdb980-49d8-11ef-9fe8-9113c2c8d024","responseTime":12,"status":200,"url":"/devices/f96297db-a191-4c64-9eab-3817169d0a9b/signaling"} device-1 | {"content":{"canTrickle":true},"device":"4c32d5c7-e048-406d-8583-229273f25431","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"f96297db-a191-4c64-9eab-3817169d0a9b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"f96297db-a191-4c64-9eab-3817169d0a9b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 3450476376571636926 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:gDj7\r\na=ice-pwd:41t6/G2/VVs7KvC4EP4eqrmE\r\na=ice-options:trickle\r\na=fingerprint:sha-256 36:F7:F5:FE:31:C1:8E:2A:3A:D6:18:97:7C:CC:B6:1F:66:25:B1:6A:FB:BE:13:8D:66:F0:C1:BF:FC:DC:27:C8\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"f96297db-a191-4c64-9eab-3817169d0a9b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 9121615189619680993 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:2IwJ\r\na=ice-pwd:GmnzoYWJtprlGR0MqCNZLT17\r\na=ice-options:trickle\r\na=fingerprint:sha-256 7D:9A:57:D1:A5:88:62:77:F7:F3:0F:21:F2:CB:5A:0A:A8:D5:3E:83:49:1A:41:1F:8E:AF:C9:5F:87:CF:0B:C4\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"4c32d5c7-e048-406d-8583-229273f25431","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:221190534 1 udp 2113937151 fd1d24f9-599d-4464-bebc-4cc0d30b5980.local 56437 typ host generation 0 ufrag 2IwJ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"4c32d5c7-e048-406d-8583-229273f25431","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2651109525 1 udp 1677729535 141.24.211.56 56437 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 2IwJ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"4c32d5c7-e048-406d-8583-229273f25431","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/4c32d5c7-e048-406d-8583-229273f25431'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/4c32d5c7-e048-406d-8583-229273f25431'"} device-1 | {"content":{"candidate":"candidate:2391561933 1 udp 2113937151 16392cbe-e9d5-4c83-bbad-eaf396bcfed4.local 58060 typ host generation 0 ufrag gDj7 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"f96297db-a191-4c64-9eab-3817169d0a9b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:178338994 1 udp 1677729535 141.24.211.56 58060 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag gDj7 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"f96297db-a191-4c64-9eab-3817169d0a9b","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/f96297db-a191-4c64-9eab-3817169d0a9b'"} device-1 | {"device":"f96297db-a191-4c64-9eab-3817169d0a9b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"4c32d5c7-e048-406d-8583-229273f25431","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"f96297db-a191-4c64-9eab-3817169d0a9b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/6ef6bc10-d7ca-4161-a799-c77b8cc96939' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6ef6bc10-d7ca-4161-a799-c77b8cc96939","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"4c32d5c7-e048-406d-8583-229273f25431","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"821791d4e318a3ce19a1f4e1fb88038c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"821791d4e318a3ce19a1f4e1fb88038c","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"f96297db-a191-4c64-9eab-3817169d0a9b","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":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/4c32d5c7-e048-406d-8583-229273f25431"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/f96297db-a191-4c64-9eab-3817169d0a9b"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/6ef6bc10-d7ca-4161-a799-c77b8cc96939"}}},"level":"info","message":"received a callback","requestID":"821791d4e318a3ce19a1f4e1fb88038c"} device-1 | {"device":"4c32d5c7-e048-406d-8583-229273f25431","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":"821791d4e318a3ce19a1f4e1fb88038c","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:17: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.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"821791d4e318a3ce19a1f4e1fb88038c"} device-1 | {"device":"4c32d5c7-e048-406d-8583-229273f25431","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"6ef6bc10-d7ca-4161-a799-c77b8cc96939","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"6ef6bc10-d7ca-4161-a799-c77b8cc96939","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/6ef6bc10-d7ca-4161-a799-c77b8cc96939' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6ef6bc10-d7ca-4161-a799-c77b8cc96939","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a1f63d401264808f869c95b814b204bc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a1f63d401264808f869c95b814b204bc","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/4c32d5c7-e048-406d-8583-229273f25431"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/f96297db-a191-4c64-9eab-3817169d0a9b"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/6ef6bc10-d7ca-4161-a799-c77b8cc96939"}}},"level":"info","message":"received a callback","requestID":"a1f63d401264808f869c95b814b204bc"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"45cb2700-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":230,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6ef6bc10-d7ca-4161-a799-c77b8cc96939","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f9606385-3d78-4a6b-8b35-259e9772da77","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837870.4538505} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":230,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.628759,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/6ef6bc10-d7ca-4161-a799-c77b8cc96939","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"45cb2700-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/6ef6bc10-d7ca-4161-a799-c77b8cc96939","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":"45cb2700-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"45cb2700-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /peerconnections/6ef6bc10-d7ca-4161-a799-c77b8cc96939 200 10ms","method":"GET","requestID":"45cb2700-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/peerconnections/6ef6bc10-d7ca-4161-a799-c77b8cc96939"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 40ms","method":"POST","requestID":"a1f63d401264808f869c95b814b204bc","responseTime":40,"status":200,"url":"/callbacks/experiment"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"45d07e30-49d8-11ef-9fe8-9113c2c8d024"} gateway-1 | {"time_local":"24/Jul/2024:16:17: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.046","http_referrer":"","http_user_agent":"node-fetch","requestID":"a1f63d401264808f869c95b814b204bc"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":231,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c32d5c7-e048-406d-8583-229273f25431","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b5822cbd-2a94-4cfe-94e1-95595c75143c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837870.4887106} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":231,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.585851,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4c32d5c7-e048-406d-8583-229273f25431","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"45d07e30-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4c32d5c7-e048-406d-8583-229273f25431","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"45d07e30-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"45d07e30-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/4c32d5c7-e048-406d-8583-229273f25431/signaling 200 10ms","method":"POST","requestID":"45d07e30-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/devices/4c32d5c7-e048-406d-8583-229273f25431/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"45d27a00-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":232,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff96297db-a191-4c64-9eab-3817169d0a9b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"67c4be46-9c7d-4a49-b97a-477454d9181c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837870.5011086} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":232,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.598726,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f96297db-a191-4c64-9eab-3817169d0a9b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"45d27a00-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f96297db-a191-4c64-9eab-3817169d0a9b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"45d27a00-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"45d27a00-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/f96297db-a191-4c64-9eab-3817169d0a9b/signaling 200 12ms","method":"POST","requestID":"45d27a00-49d8-11ef-9fe8-9113c2c8d024","responseTime":12,"status":200,"url":"/devices/f96297db-a191-4c64-9eab-3817169d0a9b/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3MH0.nO2maXsuGIk8nonjvvnCdMre1bSmO6HOjN_S9yNAOaQ","level":"info","message":"auth send jwt","requestID":"88e741a29bf847890bfe9d8a9a535082"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"88e741a29bf847890bfe9d8a9a535082","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/d8854a37-da16-449d-a022-3f7489b33186","requestID":"88e741a29bf847890bfe9d8a9a535082"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":233,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":233,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.095164,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d8854a37-da16-449d-a022-3f7489b33186","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"88e741a29bf847890bfe9d8a9a535082","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/d8854a37-da16-449d-a022-3f7489b33186","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837870,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3MH0.nO2maXsuGIk8nonjvvnCdMre1bSmO6HOjN_S9yNAOaQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"88e741a29bf847890bfe9d8a9a535082","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/d8854a37-da16-449d-a022-3f7489b33186","requestID":"88e741a29bf847890bfe9d8a9a535082"} gateway-1 | {"time_local":"24/Jul/2024:16:17:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/d8854a37-da16-449d-a022-3f7489b33186 HTTP/1.1","status": "200","body_bytes_sent":"850","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"88e741a29bf847890bfe9d8a9a535082"} experiment-1 | {"level":"info","message":"GET /experiments/d8854a37-da16-449d-a022-3f7489b33186 200 18ms","method":"GET","requestID":"88e741a29bf847890bfe9d8a9a535082","responseTime":18,"status":200,"url":"/experiments/d8854a37-da16-449d-a022-3f7489b33186"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3MH0.nO2maXsuGIk8nonjvvnCdMre1bSmO6HOjN_S9yNAOaQ","level":"info","message":"auth send jwt","requestID":"5c0a3a7d319b3ca4fda62b4df2f7b9ac"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"5c0a3a7d319b3ca4fda62b4df2f7b9ac","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/d8854a37-da16-449d-a022-3f7489b33186","requestID":"5c0a3a7d319b3ca4fda62b4df2f7b9ac"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":234,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":234,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.163634,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d8854a37-da16-449d-a022-3f7489b33186","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5c0a3a7d319b3ca4fda62b4df2f7b9ac","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/d8854a37-da16-449d-a022-3f7489b33186","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837870,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3MH0.nO2maXsuGIk8nonjvvnCdMre1bSmO6HOjN_S9yNAOaQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5c0a3a7d319b3ca4fda62b4df2f7b9ac","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d8854a37-da16-449d-a022-3f7489b33186"},"level":"info","message":"Attempting to finish experiment","requestID":"5c0a3a7d319b3ca4fda62b4df2f7b9ac"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"45f36f80-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":235,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":235,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.265476,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/6ef6bc10-d7ca-4161-a799-c77b8cc96939","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"45f36f80-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:http://localhost/peerconnections/6ef6bc10-d7ca-4161-a799-c77b8cc96939","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837870,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3MH0.nO2maXsuGIk8nonjvvnCdMre1bSmO6HOjN_S9yNAOaQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"45f36f80-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/6ef6bc10-d7ca-4161-a799-c77b8cc96939","device":"4c32d5c7-e048-406d-8583-229273f25431","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/6ef6bc10-d7ca-4161-a799-c77b8cc96939","device":"f96297db-a191-4c64-9eab-3817169d0a9b","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/6ef6bc10-d7ca-4161-a799-c77b8cc96939' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/6ef6bc10-d7ca-4161-a799-c77b8cc96939' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6ef6bc10-d7ca-4161-a799-c77b8cc96939","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e5f9afb46b351d7ca83556b12d1514b3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6ef6bc10-d7ca-4161-a799-c77b8cc96939': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6ef6bc10-d7ca-4161-a799-c77b8cc96939","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"bcb22249-e2a3-4b5d-873c-959a8cb48f46","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837870.7394588} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e5f9afb46b351d7ca83556b12d1514b3","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b6c7da2e-9810-4f97-b2f2-2d918af1f221","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837870.7398267} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"75abe7ac545f5a09f9fb211972dae568","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/4c32d5c7-e048-406d-8583-229273f25431"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/f96297db-a191-4c64-9eab-3817169d0a9b"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/6ef6bc10-d7ca-4161-a799-c77b8cc96939"}}},"level":"info","message":"received a callback","requestID":"e5f9afb46b351d7ca83556b12d1514b3"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"75abe7ac545f5a09f9fb211972dae568","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"45f36f80-49d8-11ef-9fe8-9113c2c8d024","responseTime":12,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/4c32d5c7-e048-406d-8583-229273f25431"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/f96297db-a191-4c64-9eab-3817169d0a9b"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/6ef6bc10-d7ca-4161-a799-c77b8cc96939"}}},"level":"info","message":"received a callback","requestID":"75abe7ac545f5a09f9fb211972dae568"} device-1 | {"data":{"peerconnection":"6ef6bc10-d7ca-4161-a799-c77b8cc96939","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"45f36f80-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"DELETE /peerconnections/6ef6bc10-d7ca-4161-a799-c77b8cc96939 204 50ms","method":"DELETE","requestID":"45f36f80-49d8-11ef-9fe8-9113c2c8d024","responseTime":50,"status":204,"url":"/peerconnections/6ef6bc10-d7ca-4161-a799-c77b8cc96939"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d8854a37-da16-449d-a022-3f7489b33186"},"level":"info","message":"Successfully finished experiment","requestID":"5c0a3a7d319b3ca4fda62b4df2f7b9ac"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"45fe9310-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":236,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c32d5c7-e048-406d-8583-229273f25431","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"42390548-8bc0-4a3e-a77d-13dcafd6d15c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837870.7920973} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":236,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.412163,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4c32d5c7-e048-406d-8583-229273f25431","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"45fe9310-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4c32d5c7-e048-406d-8583-229273f25431","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"45fe9310-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"45fe9310-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/4c32d5c7-e048-406d-8583-229273f25431/signaling 200 12ms","method":"POST","requestID":"45fe9310-49d8-11ef-9fe8-9113c2c8d024","responseTime":12,"status":200,"url":"/devices/4c32d5c7-e048-406d-8583-229273f25431/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4600dd00-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd8854a37-da16-449d-a022-3f7489b33186': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd8854a37-da16-449d-a022-3f7489b33186","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"fc3c2b81-50e3-4f0c-b578-0d4254da6077","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837870.798751} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4d8d4846-be4c-409b-8f35-40a1bbf9d92e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837870.7992127} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"5c0a3a7d319b3ca4fda62b4df2f7b9ac","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":237,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff96297db-a191-4c64-9eab-3817169d0a9b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"73ed61fd-269d-4c18-88ee-ceb4bf52a2ce","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837870.8134577} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":237,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":6.333889,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f96297db-a191-4c64-9eab-3817169d0a9b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4600dd00-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f96297db-a191-4c64-9eab-3817169d0a9b","object_type":"device","rebac_allow":false,"scope_allow":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":"4600dd00-49d8-11ef-9fe8-9113c2c8d024","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4600dd00-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/f96297db-a191-4c64-9eab-3817169d0a9b/signaling 200 19ms","method":"POST","requestID":"4600dd00-49d8-11ef-9fe8-9113c2c8d024","responseTime":19,"status":200,"url":"/devices/f96297db-a191-4c64-9eab-3817169d0a9b/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/d8854a37-da16-449d-a022-3f7489b33186","requestID":"5c0a3a7d319b3ca4fda62b4df2f7b9ac"} gateway-1 | {"time_local":"24/Jul/2024:16:17:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/d8854a37-da16-449d-a022-3f7489b33186 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":"5c0a3a7d319b3ca4fda62b4df2f7b9ac"} experiment-1 | {"level":"info","message":"DELETE /experiments/d8854a37-da16-449d-a022-3f7489b33186 204 175ms","method":"DELETE","requestID":"5c0a3a7d319b3ca4fda62b4df2f7b9ac","responseTime":175,"status":204,"url":"/experiments/d8854a37-da16-449d-a022-3f7489b33186"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 134ms","method":"POST","requestID":"e5f9afb46b351d7ca83556b12d1514b3","responseTime":134,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:17: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.137","http_referrer":"","http_user_agent":"node-fetch","requestID":"e5f9afb46b351d7ca83556b12d1514b3"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 133ms","method":"POST","requestID":"75abe7ac545f5a09f9fb211972dae568","responseTime":133,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:17: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.138","http_referrer":"","http_user_agent":"node-fetch","requestID":"75abe7ac545f5a09f9fb211972dae568"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3MH0.nO2maXsuGIk8nonjvvnCdMre1bSmO6HOjN_S9yNAOaQ","level":"info","message":"auth send jwt","requestID":"61507aae8679653b3d5f00b12e0da0fc"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"61507aae8679653b3d5f00b12e0da0fc","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"61507aae8679653b3d5f00b12e0da0fc"} gateway-1 | {"time_local":"24/Jul/2024:16:17:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2630","request_time":"0.842","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"bac56cc36f37fb713366c5fa7ef54e55"} gateway-1 | {"time_local":"24/Jul/2024:16:17:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2630","request_time":"0.831","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"987d08a683f90446c4ab9619794fc7d8"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":238,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":238,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.869829,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"61507aae8679653b3d5f00b12e0da0fc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837870,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3MH0.nO2maXsuGIk8nonjvvnCdMre1bSmO6HOjN_S9yNAOaQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"61507aae8679653b3d5f00b12e0da0fc","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/f96297db-a191-4c64-9eab-3817169d0a9b' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/4c32d5c7-e048-406d-8583-229273f25431' 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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"cb2178e7-1af1-4735-8847-1db30200713a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837870.9049761} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"61507aae8679653b3d5f00b12e0da0fc","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dd85c0f7-20bb-485c-832e-a28b4f087e09","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837870.9110348} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"61507aae8679653b3d5f00b12e0da0fc","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"adbb10b4-a2c4-48a4-af49-3b440af72a21","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837870.923632} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1090da4c-a5d9-4c10-ae81-2a936afe4d54","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837870.9238365} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"61507aae8679653b3d5f00b12e0da0fc","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:50.923612626Z"}]},"request_id":"8c2ba4aa-c3c1-41a2-83b2-5f0c4cd96d72","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837870.9279008} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"61507aae8679653b3d5f00b12e0da0fc","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"61507aae8679653b3d5f00b12e0da0fc"} gateway-1 | {"time_local":"24/Jul/2024:16:17:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.058","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"61507aae8679653b3d5f00b12e0da0fc"} device-1 | {"level":"info","message":"POST /devices? 201 51ms","method":"POST","requestID":"61507aae8679653b3d5f00b12e0da0fc","responseTime":51,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3MH0.nO2maXsuGIk8nonjvvnCdMre1bSmO6HOjN_S9yNAOaQ","level":"info","message":"auth send jwt","requestID":"f7611f4f2c433527aab82f784590974a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f7611f4f2c433527aab82f784590974a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"f7611f4f2c433527aab82f784590974a"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":239,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":239,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.672318,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:50Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"f7611f4f2c433527aab82f784590974a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837870,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3MH0.nO2maXsuGIk8nonjvvnCdMre1bSmO6HOjN_S9yNAOaQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f7611f4f2c433527aab82f784590974a","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3b28576-073a-415e-9e23-b3322ae6a947","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"90afd13c-75e1-4c0d-9d9c-e4455941e4be","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837870.9534698} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f7611f4f2c433527aab82f784590974a","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a94475df-1373-45b4-ba00-2e9ed352b206","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837870.9593933} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f7611f4f2c433527aab82f784590974a","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3b28576-073a-415e-9e23-b3322ae6a947","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"1bc116b6-bddc-4342-bf7a-710ea8f22d7f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837870.9682024} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5d31e750-9436-404a-bad8-a338553f9dc2","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837870.9683678} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"f7611f4f2c433527aab82f784590974a","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3b28576-073a-415e-9e23-b3322ae6a947","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3b28576-073a-415e-9e23-b3322ae6a947","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:50.968182956Z"}]},"request_id":"fc68af0c-9657-4b3a-ba72-d139dc7c9e3e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837870.9734058} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f7611f4f2c433527aab82f784590974a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f7611f4f2c433527aab82f784590974a"} gateway-1 | {"time_local":"24/Jul/2024:16:17:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.044","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f7611f4f2c433527aab82f784590974a"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"f7611f4f2c433527aab82f784590974a","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3MX0.gfwYsyZMzeuadTfRnBu2fovDXffz9kFlkVmAaPm8qgM","level":"info","message":"auth send jwt","requestID":"63a0046bdf7ab49f179a4b960f77fd76"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"63a0046bdf7ab49f179a4b960f77fd76","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"63a0046bdf7ab49f179a4b960f77fd76"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":240,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:51Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":240,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.45389,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:51Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e3b28576-073a-415e-9e23-b3322ae6a947","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"63a0046bdf7ab49f179a4b960f77fd76","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/e3b28576-073a-415e-9e23-b3322ae6a947","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837871,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3MX0.gfwYsyZMzeuadTfRnBu2fovDXffz9kFlkVmAaPm8qgM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"63a0046bdf7ab49f179a4b960f77fd76","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3b28576-073a-415e-9e23-b3322ae6a947","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3b28576-073a-415e-9e23-b3322ae6a947","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:50.968182956Z"}]},"request_id":"e9cc8857-ae90-4958-baf4-2a0232c09cf3","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837871.4739265} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"63a0046bdf7ab49f179a4b960f77fd76","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"028cc1b7-e926-4752-8751-f52ee4ad149e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837871.4810402} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"63a0046bdf7ab49f179a4b960f77fd76","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3b28576-073a-415e-9e23-b3322ae6a947","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3b28576-073a-415e-9e23-b3322ae6a947","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:50.968182956Z"}]},"request_id":"0fa349ef-e6b0-4b5f-97f4-9453bd685b52","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837871.4945107} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"63a0046bdf7ab49f179a4b960f77fd76","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"63a0046bdf7ab49f179a4b960f77fd76"} gateway-1 | {"time_local":"24/Jul/2024:16:17:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/e3b28576-073a-415e-9e23-b3322ae6a947 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.045","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"63a0046bdf7ab49f179a4b960f77fd76"} device-1 | {"level":"info","message":"PATCH /devices/e3b28576-073a-415e-9e23-b3322ae6a947 200 39ms","method":"PATCH","requestID":"63a0046bdf7ab49f179a4b960f77fd76","responseTime":39,"status":200,"url":"/devices/e3b28576-073a-415e-9e23-b3322ae6a947"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3MX0.gfwYsyZMzeuadTfRnBu2fovDXffz9kFlkVmAaPm8qgM","level":"info","message":"auth send jwt","requestID":"b3e78e20a116aaa324b3542edbce2b8a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b3e78e20a116aaa324b3542edbce2b8a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"b3e78e20a116aaa324b3542edbce2b8a"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":241,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:51Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":241,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.376979,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:51Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e3b28576-073a-415e-9e23-b3322ae6a947","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"b3e78e20a116aaa324b3542edbce2b8a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/e3b28576-073a-415e-9e23-b3322ae6a947","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837871,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3MX0.gfwYsyZMzeuadTfRnBu2fovDXffz9kFlkVmAaPm8qgM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b3e78e20a116aaa324b3542edbce2b8a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"b3e78e20a116aaa324b3542edbce2b8a"} device-1 | {"level":"info","message":"POST /devices/e3b28576-073a-415e-9e23-b3322ae6a947/websocket 200 21ms","method":"POST","requestID":"b3e78e20a116aaa324b3542edbce2b8a","responseTime":21,"status":200,"url":"/devices/e3b28576-073a-415e-9e23-b3322ae6a947/websocket"} gateway-1 | {"time_local":"24/Jul/2024:16:17:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/e3b28576-073a-415e-9e23-b3322ae6a947/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"b3e78e20a116aaa324b3542edbce2b8a"} device-1 | {"level":"info","message":"device 'http://localhost/devices/e3b28576-073a-415e-9e23-b3322ae6a947' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"19ba197bb40bc41eabf269b7ab2e02d3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"19ba197bb40bc41eabf269b7ab2e02d3","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Jul/2024:16:17:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4/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":"19ba197bb40bc41eabf269b7ab2e02d3"} device-1 | {"level":"info","message":"OPTIONS /devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4/websocket 200 2ms","method":"OPTIONS","requestID":"19ba197bb40bc41eabf269b7ab2e02d3","responseTime":2,"status":200,"url":"/devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3Mn0.39UV8axksXMAXf1HGMBg714FESmzTBIyu0Pw5FFg2aE","level":"info","message":"auth send jwt","requestID":"184be7b34f3dc7097b59c11404320c39"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"184be7b34f3dc7097b59c11404320c39","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"184be7b34f3dc7097b59c11404320c39"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":242,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:52Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":242,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.133303,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:52Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"184be7b34f3dc7097b59c11404320c39","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837872,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3Mn0.39UV8axksXMAXf1HGMBg714FESmzTBIyu0Pw5FFg2aE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"184be7b34f3dc7097b59c11404320c39","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"184be7b34f3dc7097b59c11404320c39"} gateway-1 | {"time_local":"24/Jul/2024:16:17:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4/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":"184be7b34f3dc7097b59c11404320c39"} device-1 | {"level":"info","message":"POST /devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4/websocket 200 24ms","method":"POST","requestID":"184be7b34f3dc7097b59c11404320c39","responseTime":24,"status":200,"url":"/devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3M30.f0AL4QW3pwzRZSZvA1e64AgE6Q2gByJIzF3AJkFu2bY","level":"info","message":"auth send jwt","requestID":"5bdb1dbe900928793500c4f93f5d4e23"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5bdb1dbe900928793500c4f93f5d4e23","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5bdb1dbe900928793500c4f93f5d4e23"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":243,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:53Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":243,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.122167,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5bdb1dbe900928793500c4f93f5d4e23","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837873,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3M30.f0AL4QW3pwzRZSZvA1e64AgE6Q2gByJIzF3AJkFu2bY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5bdb1dbe900928793500c4f93f5d4e23","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:50.923612626Z"}]},"request_id":"322765db-affa-4bef-bc6b-6ee21d8ac3f9","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837873.0193357} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"5bdb1dbe900928793500c4f93f5d4e23","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5bdb1dbe900928793500c4f93f5d4e23"} gateway-1 | {"time_local":"24/Jul/2024:16:17:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5bdb1dbe900928793500c4f93f5d4e23"} device-1 | {"level":"info","message":"GET /devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4? 200 19ms","method":"GET","requestID":"5bdb1dbe900928793500c4f93f5d4e23","responseTime":19,"status":200,"url":"/devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3M30.f0AL4QW3pwzRZSZvA1e64AgE6Q2gByJIzF3AJkFu2bY","level":"info","message":"auth send jwt","requestID":"e51eee6ddb15cf11f4770ec0f2d5dec9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e51eee6ddb15cf11f4770ec0f2d5dec9","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e51eee6ddb15cf11f4770ec0f2d5dec9"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":244,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:53Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":244,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.383105,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e3b28576-073a-415e-9e23-b3322ae6a947","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"e51eee6ddb15cf11f4770ec0f2d5dec9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/e3b28576-073a-415e-9e23-b3322ae6a947","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837873,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3M30.f0AL4QW3pwzRZSZvA1e64AgE6Q2gByJIzF3AJkFu2bY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e51eee6ddb15cf11f4770ec0f2d5dec9","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3b28576-073a-415e-9e23-b3322ae6a947","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3b28576-073a-415e-9e23-b3322ae6a947","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:50.968182956Z"}]},"request_id":"a166d3da-9f57-4703-ac56-060268c90561","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837873.0451276} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e51eee6ddb15cf11f4770ec0f2d5dec9","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e51eee6ddb15cf11f4770ec0f2d5dec9"} gateway-1 | {"time_local":"24/Jul/2024:16:17:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e3b28576-073a-415e-9e23-b3322ae6a947? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e51eee6ddb15cf11f4770ec0f2d5dec9"} device-1 | {"level":"info","message":"GET /devices/e3b28576-073a-415e-9e23-b3322ae6a947? 200 19ms","method":"GET","requestID":"e51eee6ddb15cf11f4770ec0f2d5dec9","responseTime":19,"status":200,"url":"/devices/e3b28576-073a-415e-9e23-b3322ae6a947?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3M30.f0AL4QW3pwzRZSZvA1e64AgE6Q2gByJIzF3AJkFu2bY","level":"info","message":"auth send jwt","requestID":"53282c735545fffb04d43e7221e57c8e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"53282c735545fffb04d43e7221e57c8e","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"53282c735545fffb04d43e7221e57c8e"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":245,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:53Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":245,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.275226,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:53Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"53282c735545fffb04d43e7221e57c8e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837873,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3M30.f0AL4QW3pwzRZSZvA1e64AgE6Q2gByJIzF3AJkFu2bY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"53282c735545fffb04d43e7221e57c8e","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/de0b97cc-64bb-48f0-8f73-ce9e3a91db43"},"level":"info","message":"Attempting to run experiment","requestID":"53282c735545fffb04d43e7221e57c8e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/de0b97cc-64bb-48f0-8f73-ce9e3a91db43"},"level":"info","message":"Attempting to book experiment","requestID":"53282c735545fffb04d43e7221e57c8e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/de0b97cc-64bb-48f0-8f73-ce9e3a91db43"},"level":"info","message":"Successfully booked experiment","requestID":"53282c735545fffb04d43e7221e57c8e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"476045f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"47609410-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":246,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:53Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":246,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.177247,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:53Z"} authorization-1 | {"client_addr":"127.0.0.1:46174","level":"info","msg":"Received request.","req_id":247,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"476045f0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837873,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3M30.f0AL4QW3pwzRZSZvA1e64AgE6Q2gByJIzF3AJkFu2bY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"476045f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46174","level":"info","msg":"Sent response.","req_id":247,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.161235,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e3b28576-073a-415e-9e23-b3322ae6a947","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"47609410-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/e3b28576-073a-415e-9e23-b3322ae6a947","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837873,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3M30.f0AL4QW3pwzRZSZvA1e64AgE6Q2gByJIzF3AJkFu2bY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"47609410-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:50.923612626Z"}]},"request_id":"ffc2310a-f79a-48bb-8f01-4eb6ef39589d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837873.1162298} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"476045f0-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3b28576-073a-415e-9e23-b3322ae6a947","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3b28576-073a-415e-9e23-b3322ae6a947","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:50.968182956Z"}]},"request_id":"f7c961a5-9611-4782-9b10-2c6c13647770","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837873.1180325} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"47609410-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"476045f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4? 200 23ms","method":"GET","requestID":"476045f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":23,"status":200,"url":"/devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"47609410-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/e3b28576-073a-415e-9e23-b3322ae6a947? 200 25ms","method":"GET","requestID":"47609410-49d8-11ef-9fe8-9113c2c8d024","responseTime":25,"status":200,"url":"/devices/e3b28576-073a-415e-9e23-b3322ae6a947?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/de0b97cc-64bb-48f0-8f73-ce9e3a91db43"},"level":"info","message":"Setting up experiment","requestID":"53282c735545fffb04d43e7221e57c8e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/de0b97cc-64bb-48f0-8f73-ce9e3a91db43"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"53282c735545fffb04d43e7221e57c8e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/de0b97cc-64bb-48f0-8f73-ce9e3a91db43"},"level":"info","message":"Successfully locked booking for experiment","requestID":"53282c735545fffb04d43e7221e57c8e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/de0b97cc-64bb-48f0-8f73-ce9e3a91db43"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"53282c735545fffb04d43e7221e57c8e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/de0b97cc-64bb-48f0-8f73-ce9e3a91db43"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"53282c735545fffb04d43e7221e57c8e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/de0b97cc-64bb-48f0-8f73-ce9e3a91db43"},"level":"info","message":"Attempting to update booking for experiment","requestID":"53282c735545fffb04d43e7221e57c8e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/de0b97cc-64bb-48f0-8f73-ce9e3a91db43"},"level":"info","message":"Successfully updated booking for experiment","requestID":"53282c735545fffb04d43e7221e57c8e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/de0b97cc-64bb-48f0-8f73-ce9e3a91db43"},"level":"info","message":"Successfully set up experiment","requestID":"53282c735545fffb04d43e7221e57c8e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"476d3e40-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"476d8c60-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"476dda80-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":248,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:53Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":248,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.714748,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:53Z"} authorization-1 | {"client_addr":"127.0.0.1:46174","level":"info","msg":"Received request.","req_id":249,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:53Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/de0b97cc-64bb-48f0-8f73-ce9e3a91db43"},"level":"info","message":"Successfully running experiment","requestID":"53282c735545fffb04d43e7221e57c8e"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"476d3e40-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837873,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3M30.f0AL4QW3pwzRZSZvA1e64AgE6Q2gByJIzF3AJkFu2bY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"476d3e40-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46174","level":"info","msg":"Sent response.","req_id":249,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.796712,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e3b28576-073a-415e-9e23-b3322ae6a947","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"476d8c60-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/e3b28576-073a-415e-9e23-b3322ae6a947","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837873,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3M30.f0AL4QW3pwzRZSZvA1e64AgE6Q2gByJIzF3AJkFu2bY"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"476d8c60-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":250,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:53Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":250,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.66764,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:53Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"def8f91f-04af-4fa8-8d76-13ebc66e276a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837873.2019408} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"476dda80-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","object_type":"device","rebac_allow":false,"scope_allow":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":"476dda80-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:50.923612626Z"}]},"request_id":"5bd007ac-35eb-4606-9ce1-ab7657d3c77c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837873.2059264} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3b28576-073a-415e-9e23-b3322ae6a947","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3b28576-073a-415e-9e23-b3322ae6a947","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:50.968182956Z"}]},"request_id":"2be4eb1b-8022-495f-9a84-89f837beb297","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837873.208946} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"476d3e40-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"476d8c60-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"476dda80-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4/signaling 200 27ms","method":"POST","requestID":"476dda80-49d8-11ef-9fe8-9113c2c8d024","responseTime":27,"status":200,"url":"/devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"476d3e40-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4? 200 33ms","method":"GET","requestID":"476d3e40-49d8-11ef-9fe8-9113c2c8d024","responseTime":33,"status":200,"url":"/devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4?"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fde0b97cc-64bb-48f0-8f73-ce9e3a91db43#owner@http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fde0b97cc-64bb-48f0-8f73-ce9e3a91db43","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"77feb9d7-436a-4d69-ae00-0622c198e212","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837873.2209818} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"efe54bfc-02ac-4fbd-8d2c-a265e2fc43df","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837873.2213655} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"476d8c60-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/e3b28576-073a-415e-9e23-b3322ae6a947? 200 32ms","method":"GET","requestID":"476d8c60-49d8-11ef-9fe8-9113c2c8d024","responseTime":32,"status":200,"url":"/devices/e3b28576-073a-415e-9e23-b3322ae6a947?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"53282c735545fffb04d43e7221e57c8e","responseTime":22,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"47729570-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"47730aa0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":251,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:53Z"} authorization-1 | {"client_addr":"127.0.0.1:46174","level":"info","msg":"Received request.","req_id":252,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:53Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3b28576-073a-415e-9e23-b3322ae6a947","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aa1fb669-92a2-402a-9c98-7eb8534a9a31","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837873.229558} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":251,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.247042,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e3b28576-073a-415e-9e23-b3322ae6a947","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"47729570-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e3b28576-073a-415e-9e23-b3322ae6a947","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"47729570-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"901e97b0-bf79-4773-8894-1d5764140cf5","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837873.2308292} experiment-1 | {"data":{"experiment":"http://localhost/experiments/de0b97cc-64bb-48f0-8f73-ce9e3a91db43","user":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"53282c735545fffb04d43e7221e57c8e"} authorization-1 | {"client_addr":"127.0.0.1:46174","level":"info","msg":"Sent response.","req_id":252,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.391238,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:53Z"} gateway-1 | {"time_local":"24/Jul/2024:16:17:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"781","request_time":"0.180","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"53282c735545fffb04d43e7221e57c8e"} experiment-1 | {"level":"info","message":"POST /experiments? 201 174ms","method":"POST","requestID":"53282c735545fffb04d43e7221e57c8e","responseTime":174,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"47730aa0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","object_type":"device","rebac_allow":false,"scope_allow":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":"47730aa0-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"47729570-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/e3b28576-073a-415e-9e23-b3322ae6a947/signaling 200 13ms","method":"POST","requestID":"47729570-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/devices/e3b28576-073a-415e-9e23-b3322ae6a947/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"47730aa0-49d8-11ef-9fe8-9113c2c8d024"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3M30.f0AL4QW3pwzRZSZvA1e64AgE6Q2gByJIzF3AJkFu2bY","level":"info","message":"auth send jwt","requestID":"49ac386fd8c7239d1ae21568eb4e1d98"} device-1 | {"level":"info","message":"POST /devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4/signaling 200 12ms","method":"POST","requestID":"47730aa0-49d8-11ef-9fe8-9113c2c8d024","responseTime":12,"status":200,"url":"/devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4/signaling"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"49ac386fd8c7239d1ae21568eb4e1d98","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"49ac386fd8c7239d1ae21568eb4e1d98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"47755490-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":253,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:53Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":253,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.081646,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"49ac386fd8c7239d1ae21568eb4e1d98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837873,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3M30.f0AL4QW3pwzRZSZvA1e64AgE6Q2gByJIzF3AJkFu2bY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"49ac386fd8c7239d1ae21568eb4e1d98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46174","level":"info","msg":"Received request.","req_id":254,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:53Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3b28576-073a-415e-9e23-b3322ae6a947","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"07871292-bc6d-4fc6-b3ee-6977f554f6d9","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837873.2466228} authorization-1 | {"client_addr":"127.0.0.1:46174","level":"info","msg":"Sent response.","req_id":254,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.58391,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e3b28576-073a-415e-9e23-b3322ae6a947","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"47755490-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e3b28576-073a-415e-9e23-b3322ae6a947","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"47755490-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:50.923612626Z"}]},"request_id":"173c8246-66f1-427c-9b3e-d8481df2e4f5","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837873.2515047} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"47755490-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/e3b28576-073a-415e-9e23-b3322ae6a947/signaling 200 11ms","method":"POST","requestID":"47755490-49d8-11ef-9fe8-9113c2c8d024","responseTime":11,"status":200,"url":"/devices/e3b28576-073a-415e-9e23-b3322ae6a947/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"49ac386fd8c7239d1ae21568eb4e1d98","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/de0b97cc-64bb-48f0-8f73-ce9e3a91db43"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"53282c735545fffb04d43e7221e57c8e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/de0b97cc-64bb-48f0-8f73-ce9e3a91db43"},"level":"info","message":"Building connection plan","requestID":"53282c735545fffb04d43e7221e57c8e"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"4540798c-5ae3-4f64-8a1f-6a494f1481b9"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"862f70bb-5655-40e8-9062-830d01ff3e5d"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/file","uuid":"40ef8751-9f11-4fa6-b281-ad21105d39a6"}]},"level":"info","message":"Built pairwise service configurations","requestID":"53282c735545fffb04d43e7221e57c8e"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/e3b28576-073a-415e-9e23-b3322ae6a947"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"53282c735545fffb04d43e7221e57c8e"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"47777770-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"49ac386fd8c7239d1ae21568eb4e1d98"} device-1 | {"level":"info","message":"GET /devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4? 200 19ms","method":"GET","requestID":"49ac386fd8c7239d1ae21568eb4e1d98","responseTime":19,"status":200,"url":"/devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4?"} gateway-1 | {"time_local":"24/Jul/2024:16:17:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"49ac386fd8c7239d1ae21568eb4e1d98"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":255,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:53Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":255,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.022718,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:53Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"47777770-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837873,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3M30.f0AL4QW3pwzRZSZvA1e64AgE6Q2gByJIzF3AJkFu2bY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"47777770-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3M30.f0AL4QW3pwzRZSZvA1e64AgE6Q2gByJIzF3AJkFu2bY","level":"info","message":"auth send jwt","requestID":"e2e921729973ff7c52483af48b810ffb"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e2e921729973ff7c52483af48b810ffb","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e2e921729973ff7c52483af48b810ffb"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":256,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:53Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":256,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.666984,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e3b28576-073a-415e-9e23-b3322ae6a947","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"e2e921729973ff7c52483af48b810ffb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/e3b28576-073a-415e-9e23-b3322ae6a947","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837873,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3M30.f0AL4QW3pwzRZSZvA1e64AgE6Q2gByJIzF3AJkFu2bY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e2e921729973ff7c52483af48b810ffb","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","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%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"af6291b1-b1c4-4d2f-b017-7dae5bbfd858","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837873.271043} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b5db526a-a704-441b-849f-821da42eba17","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837873.2713602} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3b28576-073a-415e-9e23-b3322ae6a947","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3b28576-073a-415e-9e23-b3322ae6a947","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:50.968182956Z"}]},"request_id":"3d274787-e46b-441d-9ecc-2ed77665f51d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837873.2721257} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"47777770-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e2e921729973ff7c52483af48b810ffb","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e2e921729973ff7c52483af48b810ffb"} gateway-1 | {"time_local":"24/Jul/2024:16:17:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e3b28576-073a-415e-9e23-b3322ae6a947? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e2e921729973ff7c52483af48b810ffb"} device-1 | {"level":"info","message":"GET /devices/e3b28576-073a-415e-9e23-b3322ae6a947? 200 15ms","method":"GET","requestID":"e2e921729973ff7c52483af48b810ffb","responseTime":15,"status":200,"url":"/devices/e3b28576-073a-415e-9e23-b3322ae6a947?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"47777770-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"47777770-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/b8e31697-0a20-4b34-baeb-567f8f7c0aaf'","requestID":"47777770-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/b8e31697-0a20-4b34-baeb-567f8f7c0aaf'","requestID":"47777770-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"47777770-49d8-11ef-9fe8-9113c2c8d024"} 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":"47777770-49d8-11ef-9fe8-9113c2c8d024","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":"47777770-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/b8e31697-0a20-4b34-baeb-567f8f7c0aaf","device":"c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}],"tiebreaker":false} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/de0b97cc-64bb-48f0-8f73-ce9e3a91db43"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"53282c735545fffb04d43e7221e57c8e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"47818990-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":257,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:53Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8168f346-11a9-4514-a4ec-0d7d9e133a2e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837873.3263857} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":257,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.73118,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"47818990-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"47818990-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"47818990-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4/signaling 200 9ms","method":"POST","requestID":"47818990-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"47838560-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"device":"c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":258,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:53Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3b28576-073a-415e-9e23-b3322ae6a947","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"915bc6fc-794d-41b7-a569-fc674dc7dc95","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837873.340337} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":258,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.110443,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e3b28576-073a-415e-9e23-b3322ae6a947","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"47838560-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e3b28576-073a-415e-9e23-b3322ae6a947","object_type":"device","rebac_allow":false,"scope_allow":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":"47838560-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"47838560-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/e3b28576-073a-415e-9e23-b3322ae6a947/signaling 200 10ms","method":"POST","requestID":"47838560-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/devices/e3b28576-073a-415e-9e23-b3322ae6a947/signaling"} device-1 | {"device":"e3b28576-073a-415e-9e23-b3322ae6a947","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"b8e31697-0a20-4b34-baeb-567f8f7c0aaf","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 7568453053266936170 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:TRWe\r\na=ice-pwd:AZbKjcaHTtt17GPLhSHrUHM5\r\na=ice-options:trickle\r\na=fingerprint:sha-256 C0:DE:76:4D:AB:B2:7F:36:34:A1:85:FC:6C:7C:44:BB:52:46:B6:9F:BE:E8:D4:C1:00:10:82:11:4F:3A:A8:AE\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:794301866 1 udp 2113937151 f241ece8-8632-4d89-8b8a-80f427ac9724.local 59726 typ host generation 0 ufrag TRWe network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:2876604373 1 udp 1677729535 141.24.211.56 59726 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag TRWe network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","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/b8e31697-0a20-4b34-baeb-567f8f7c0aaf' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b8e31697-0a20-4b34-baeb-567f8f7c0aaf","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"e3b28576-073a-415e-9e23-b3322ae6a947","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"e3b28576-073a-415e-9e23-b3322ae6a947","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"e3b28576-073a-415e-9e23-b3322ae6a947","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.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":"b8f47d84e7dec7b74db379a8be29f26e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b8f47d84e7dec7b74db379a8be29f26e","responseTime":2,"status":200,"url":"/auth"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4'"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/e3b28576-073a-415e-9e23-b3322ae6a947"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/b8e31697-0a20-4b34-baeb-567f8f7c0aaf"}}},"level":"info","message":"received a callback","requestID":"b8f47d84e7dec7b74db379a8be29f26e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"b8f47d84e7dec7b74db379a8be29f26e","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:17:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"b8f47d84e7dec7b74db379a8be29f26e"} device-1 | {"data":{"peerconnection":"b8e31697-0a20-4b34-baeb-567f8f7c0aaf","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"e3b28576-073a-415e-9e23-b3322ae6a947","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"e3b28576-073a-415e-9e23-b3322ae6a947","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"b8e31697-0a20-4b34-baeb-567f8f7c0aaf","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","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/b8e31697-0a20-4b34-baeb-567f8f7c0aaf' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b8e31697-0a20-4b34-baeb-567f8f7c0aaf","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a6027d6fe7399bb9c6d707042960d374","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a6027d6fe7399bb9c6d707042960d374","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/e3b28576-073a-415e-9e23-b3322ae6a947"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/b8e31697-0a20-4b34-baeb-567f8f7c0aaf"}}},"level":"info","message":"received a callback","requestID":"a6027d6fe7399bb9c6d707042960d374"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"48c0c050-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":259,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:55Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb8e31697-0a20-4b34-baeb-567f8f7c0aaf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a2ab3682-0fbc-4f5b-ade9-b4d6b8e3c66a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837875.418036} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":259,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.572963,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b8e31697-0a20-4b34-baeb-567f8f7c0aaf","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"48c0c050-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/b8e31697-0a20-4b34-baeb-567f8f7c0aaf","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":"48c0c050-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"48c0c050-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /peerconnections/b8e31697-0a20-4b34-baeb-567f8f7c0aaf 200 9ms","method":"GET","requestID":"48c0c050-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/peerconnections/b8e31697-0a20-4b34-baeb-567f8f7c0aaf"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 41ms","method":"POST","requestID":"a6027d6fe7399bb9c6d707042960d374","responseTime":41,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:17:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.044","http_referrer":"","http_user_agent":"node-fetch","requestID":"a6027d6fe7399bb9c6d707042960d374"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"48c5f070-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":260,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:55Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d70dd9fa-c76a-49b6-9d3c-ac17dcf1e64d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837875.4531207} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":260,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.752492,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"48c5f070-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"48c5f070-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"48c5f070-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4/signaling 200 11ms","method":"POST","requestID":"48c5f070-49d8-11ef-9fe8-9113c2c8d024","responseTime":11,"status":200,"url":"/devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"48c81350-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":261,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:55Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3b28576-073a-415e-9e23-b3322ae6a947","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d2a6f8a0-5c26-4b44-9087-ac2f5ff82039","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837875.466272} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":261,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.119329,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e3b28576-073a-415e-9e23-b3322ae6a947","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"48c81350-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e3b28576-073a-415e-9e23-b3322ae6a947","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"48c81350-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"48c81350-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/e3b28576-073a-415e-9e23-b3322ae6a947/signaling 200 10ms","method":"POST","requestID":"48c81350-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/devices/e3b28576-073a-415e-9e23-b3322ae6a947/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3NX0.PV9dmvLfsGh6jnANXqrXxQfCi3I8TZJv0PnqC0XhcLk","level":"info","message":"auth send jwt","requestID":"f36cd33febbe733621ad49e197f809ce"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f36cd33febbe733621ad49e197f809ce","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/de0b97cc-64bb-48f0-8f73-ce9e3a91db43","requestID":"f36cd33febbe733621ad49e197f809ce"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":262,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:55Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":262,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.340584,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/de0b97cc-64bb-48f0-8f73-ce9e3a91db43","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"f36cd33febbe733621ad49e197f809ce","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/de0b97cc-64bb-48f0-8f73-ce9e3a91db43","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837875,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3NX0.PV9dmvLfsGh6jnANXqrXxQfCi3I8TZJv0PnqC0XhcLk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f36cd33febbe733621ad49e197f809ce","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/de0b97cc-64bb-48f0-8f73-ce9e3a91db43","requestID":"f36cd33febbe733621ad49e197f809ce"} gateway-1 | {"time_local":"24/Jul/2024:16:17:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/de0b97cc-64bb-48f0-8f73-ce9e3a91db43 HTTP/1.1","status": "200","body_bytes_sent":"854","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f36cd33febbe733621ad49e197f809ce"} experiment-1 | {"level":"info","message":"GET /experiments/de0b97cc-64bb-48f0-8f73-ce9e3a91db43 200 17ms","method":"GET","requestID":"f36cd33febbe733621ad49e197f809ce","responseTime":17,"status":200,"url":"/experiments/de0b97cc-64bb-48f0-8f73-ce9e3a91db43"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3NX0.PV9dmvLfsGh6jnANXqrXxQfCi3I8TZJv0PnqC0XhcLk","level":"info","message":"auth send jwt","requestID":"f7a7d302f04b800c58e51aae744fd3ae"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f7a7d302f04b800c58e51aae744fd3ae","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/de0b97cc-64bb-48f0-8f73-ce9e3a91db43","requestID":"f7a7d302f04b800c58e51aae744fd3ae"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":263,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:55Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":263,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.411827,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:55Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/de0b97cc-64bb-48f0-8f73-ce9e3a91db43","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"f7a7d302f04b800c58e51aae744fd3ae","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/de0b97cc-64bb-48f0-8f73-ce9e3a91db43","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837875,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3NX0.PV9dmvLfsGh6jnANXqrXxQfCi3I8TZJv0PnqC0XhcLk"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f7a7d302f04b800c58e51aae744fd3ae","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/de0b97cc-64bb-48f0-8f73-ce9e3a91db43"},"level":"info","message":"Attempting to finish experiment","requestID":"f7a7d302f04b800c58e51aae744fd3ae"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"48eeae20-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":264,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:55Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":264,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.19866,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:55Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b8e31697-0a20-4b34-baeb-567f8f7c0aaf","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"48eeae20-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:http://localhost/peerconnections/b8e31697-0a20-4b34-baeb-567f8f7c0aaf","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837875,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3NX0.PV9dmvLfsGh6jnANXqrXxQfCi3I8TZJv0PnqC0XhcLk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"48eeae20-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/b8e31697-0a20-4b34-baeb-567f8f7c0aaf","device":"c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"e3b28576-073a-415e-9e23-b3322ae6a947","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"e3b28576-073a-415e-9e23-b3322ae6a947","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"e3b28576-073a-415e-9e23-b3322ae6a947","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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/b8e31697-0a20-4b34-baeb-567f8f7c0aaf' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/b8e31697-0a20-4b34-baeb-567f8f7c0aaf' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b8e31697-0a20-4b34-baeb-567f8f7c0aaf","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e6841c57def280c8a0091c30cf00ef14","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e6841c57def280c8a0091c30cf00ef14","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb8e31697-0a20-4b34-baeb-567f8f7c0aaf': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb8e31697-0a20-4b34-baeb-567f8f7c0aaf","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"94db58ff-27a0-4939-8106-cc872da98a37","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837875.7416873} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/e3b28576-073a-415e-9e23-b3322ae6a947"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/b8e31697-0a20-4b34-baeb-567f8f7c0aaf"}}},"level":"info","message":"received a callback","requestID":"e6841c57def280c8a0091c30cf00ef14"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7eb5f601c3cfdc95419e25b5ed5c9818","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"7eb5f601c3cfdc95419e25b5ed5c9818","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e012a28e-298c-4cc9-837f-1f64e2cbb3ea","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837875.742013} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/e3b28576-073a-415e-9e23-b3322ae6a947"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/b8e31697-0a20-4b34-baeb-567f8f7c0aaf"}}},"level":"info","message":"received a callback","requestID":"7eb5f601c3cfdc95419e25b5ed5c9818"} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"48eeae20-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"b8e31697-0a20-4b34-baeb-567f8f7c0aaf","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"48eeae20-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"DELETE /peerconnections/b8e31697-0a20-4b34-baeb-567f8f7c0aaf 204 47ms","method":"DELETE","requestID":"48eeae20-49d8-11ef-9fe8-9113c2c8d024","responseTime":47,"status":204,"url":"/peerconnections/b8e31697-0a20-4b34-baeb-567f8f7c0aaf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/de0b97cc-64bb-48f0-8f73-ce9e3a91db43"},"level":"info","message":"Successfully finished experiment","requestID":"f7a7d302f04b800c58e51aae744fd3ae"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"48f98390-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":265,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:55Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1fe5b1e8-76b3-4454-aac6-77ba7d9ba48c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837875.7938385} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":265,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.738343,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"48f98390-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4","object_type":"device","rebac_allow":false,"scope_allow":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":"48f98390-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"48f98390-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4/signaling 200 17ms","method":"POST","requestID":"48f98390-49d8-11ef-9fe8-9113c2c8d024","responseTime":17,"status":200,"url":"/devices/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4/signaling"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fde0b97cc-64bb-48f0-8f73-ce9e3a91db43': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fde0b97cc-64bb-48f0-8f73-ce9e3a91db43","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"27726f79-b7d5-42d9-bbdf-f9c635bcc3ce","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837875.8030252} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8456b1a4-a567-4a5f-8873-4821037d7473","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837875.8034143} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"48fc90d0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"f7a7d302f04b800c58e51aae744fd3ae","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":266,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:55Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3b28576-073a-415e-9e23-b3322ae6a947","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"309ea6a7-5881-4184-a5bd-36afb29aae81","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837875.8118448} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":266,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.451438,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e3b28576-073a-415e-9e23-b3322ae6a947","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"48fc90d0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e3b28576-073a-415e-9e23-b3322ae6a947","object_type":"device","rebac_allow":false,"scope_allow":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":"48fc90d0-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"48fc90d0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/e3b28576-073a-415e-9e23-b3322ae6a947/signaling 200 13ms","method":"POST","requestID":"48fc90d0-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/devices/e3b28576-073a-415e-9e23-b3322ae6a947/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/de0b97cc-64bb-48f0-8f73-ce9e3a91db43","requestID":"f7a7d302f04b800c58e51aae744fd3ae"} gateway-1 | {"time_local":"24/Jul/2024:16:17:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/de0b97cc-64bb-48f0-8f73-ce9e3a91db43 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.185","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f7a7d302f04b800c58e51aae744fd3ae"} gateway-1 | {"time_local":"24/Jul/2024:16:17:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2581","request_time":"4.349","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"cc645545cc9de07fb55ae5235de4592b"} experiment-1 | {"level":"info","message":"DELETE /experiments/de0b97cc-64bb-48f0-8f73-ce9e3a91db43 204 181ms","method":"DELETE","requestID":"f7a7d302f04b800c58e51aae744fd3ae","responseTime":181,"status":204,"url":"/experiments/de0b97cc-64bb-48f0-8f73-ce9e3a91db43"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 140ms","method":"POST","requestID":"e6841c57def280c8a0091c30cf00ef14","responseTime":140,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:17:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.144","http_referrer":"","http_user_agent":"node-fetch","requestID":"e6841c57def280c8a0091c30cf00ef14"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 139ms","method":"POST","requestID":"7eb5f601c3cfdc95419e25b5ed5c9818","responseTime":139,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:17:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.144","http_referrer":"","http_user_agent":"node-fetch","requestID":"7eb5f601c3cfdc95419e25b5ed5c9818"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3NX0.PV9dmvLfsGh6jnANXqrXxQfCi3I8TZJv0PnqC0XhcLk","level":"info","message":"auth send jwt","requestID":"7dc09b8f6ce6379445197e2b2e3d1809"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7dc09b8f6ce6379445197e2b2e3d1809","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"7dc09b8f6ce6379445197e2b2e3d1809"} gateway-1 | {"time_local":"24/Jul/2024:16:17:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2490","request_time":"2.904","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b62f06cec71b23bffd536baf5c596ef6"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":267,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:55Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":267,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.954742,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:55Z"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/e3b28576-073a-415e-9e23-b3322ae6a947' closed"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"7dc09b8f6ce6379445197e2b2e3d1809","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837875,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3NX0.PV9dmvLfsGh6jnANXqrXxQfCi3I8TZJv0PnqC0XhcLk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7dc09b8f6ce6379445197e2b2e3d1809","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/c3f8ccc2-aa65-4ee2-9ba0-329e0e5a70e4' 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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c11a2ba-4dbf-4319-8f1d-43b769e59e62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e9e5915b-3ae0-4597-afe7-0157bba43e3f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837875.9044535} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7dc09b8f6ce6379445197e2b2e3d1809","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"47dd9a6d-4a9e-4b53-8b47-b2971f926011","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837875.9104693} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"7dc09b8f6ce6379445197e2b2e3d1809","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c11a2ba-4dbf-4319-8f1d-43b769e59e62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"40c4a204-5270-46fb-a776-830d9b3b6c89","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837875.9207573} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2ba4172a-1cdf-40e3-9235-7448312b6866","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837875.9208746} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"7dc09b8f6ce6379445197e2b2e3d1809","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c11a2ba-4dbf-4319-8f1d-43b769e59e62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c11a2ba-4dbf-4319-8f1d-43b769e59e62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:55.920737349Z"}]},"request_id":"7e0b132d-df90-413b-9ac8-c791854dfe68","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837875.926832} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7dc09b8f6ce6379445197e2b2e3d1809","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"7dc09b8f6ce6379445197e2b2e3d1809"} gateway-1 | {"time_local":"24/Jul/2024:16:17:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7dc09b8f6ce6379445197e2b2e3d1809"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"7dc09b8f6ce6379445197e2b2e3d1809","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3NX0.PV9dmvLfsGh6jnANXqrXxQfCi3I8TZJv0PnqC0XhcLk","level":"info","message":"auth send jwt","requestID":"26b069bf9524c319a8f8c2fa5914433b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"26b069bf9524c319a8f8c2fa5914433b","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"26b069bf9524c319a8f8c2fa5914433b"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":268,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:55Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":268,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.725581,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:55Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"26b069bf9524c319a8f8c2fa5914433b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837875,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3NX0.PV9dmvLfsGh6jnANXqrXxQfCi3I8TZJv0PnqC0XhcLk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"26b069bf9524c319a8f8c2fa5914433b","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1378b53-5863-440b-a968-fe051aead953","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"b6af9445-8724-4711-ad00-4c439072f2d7","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837875.9566944} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"26b069bf9524c319a8f8c2fa5914433b","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4876c1b5-07af-427d-99d4-8a662811370f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837875.962006} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"26b069bf9524c319a8f8c2fa5914433b","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1378b53-5863-440b-a968-fe051aead953","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"1c672e48-ed3e-4f07-8f53-d5bea9697094","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837875.9722872} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e7bea46b-4265-49ce-bce9-2d4006b44f0a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837875.9723942} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"26b069bf9524c319a8f8c2fa5914433b","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1378b53-5863-440b-a968-fe051aead953","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1378b53-5863-440b-a968-fe051aead953","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:55.972269997Z"}]},"request_id":"28aedb6e-9ae5-4cae-85c2-78e4925a10a3","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837875.9767694} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"26b069bf9524c319a8f8c2fa5914433b","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"26b069bf9524c319a8f8c2fa5914433b"} gateway-1 | {"time_local":"24/Jul/2024:16:17:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"26b069bf9524c319a8f8c2fa5914433b"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"26b069bf9524c319a8f8c2fa5914433b","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3Nn0.hk_B6cypXiKSg-WJNe-dWMZZ0ibCjPt8Qi8YpzfRFiI","level":"info","message":"auth send jwt","requestID":"62a51b5d9cc771d1d2b1a151b336954d"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"62a51b5d9cc771d1d2b1a151b336954d","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"62a51b5d9cc771d1d2b1a151b336954d"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":269,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:56Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":269,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.645375,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:56Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"62a51b5d9cc771d1d2b1a151b336954d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837876,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3Nn0.hk_B6cypXiKSg-WJNe-dWMZZ0ibCjPt8Qi8YpzfRFiI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"62a51b5d9cc771d1d2b1a151b336954d","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c11a2ba-4dbf-4319-8f1d-43b769e59e62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c11a2ba-4dbf-4319-8f1d-43b769e59e62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:55.920737349Z"}]},"request_id":"03c3716f-efa9-44e9-a90b-54925d4fddbd","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837876.4708326} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"62a51b5d9cc771d1d2b1a151b336954d","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"34f3162b-5dc6-413c-99ba-78d914680bf5","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837876.4774437} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"62a51b5d9cc771d1d2b1a151b336954d","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c11a2ba-4dbf-4319-8f1d-43b769e59e62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c11a2ba-4dbf-4319-8f1d-43b769e59e62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:55.920737349Z"}]},"request_id":"0d6261d6-5f06-415b-bcdf-cbb21b3845b6","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837876.4901056} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"62a51b5d9cc771d1d2b1a151b336954d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"62a51b5d9cc771d1d2b1a151b336954d"} gateway-1 | {"time_local":"24/Jul/2024:16:17:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.042","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"62a51b5d9cc771d1d2b1a151b336954d"} device-1 | {"level":"info","message":"PATCH /devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62 200 35ms","method":"PATCH","requestID":"62a51b5d9cc771d1d2b1a151b336954d","responseTime":35,"status":200,"url":"/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3Nn0.hk_B6cypXiKSg-WJNe-dWMZZ0ibCjPt8Qi8YpzfRFiI","level":"info","message":"auth send jwt","requestID":"800d787692645e9c7baf6a38ff4a92e5"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"800d787692645e9c7baf6a38ff4a92e5","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"800d787692645e9c7baf6a38ff4a92e5"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":270,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:56Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":270,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.150779,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:56Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"800d787692645e9c7baf6a38ff4a92e5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837876,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3Nn0.hk_B6cypXiKSg-WJNe-dWMZZ0ibCjPt8Qi8YpzfRFiI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"800d787692645e9c7baf6a38ff4a92e5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"800d787692645e9c7baf6a38ff4a92e5"} device-1 | {"level":"info","message":"POST /devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62/websocket 200 21ms","method":"POST","requestID":"800d787692645e9c7baf6a38ff4a92e5","responseTime":21,"status":200,"url":"/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62/websocket"} gateway-1 | {"time_local":"24/Jul/2024:16:17:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"800d787692645e9c7baf6a38ff4a92e5"} device-1 | {"level":"info","message":"device 'http://localhost/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b955c0b3a48700bcca984548e451a9f1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b955c0b3a48700bcca984548e451a9f1","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Jul/2024:16:17:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/d1378b53-5863-440b-a968-fe051aead953/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":"b955c0b3a48700bcca984548e451a9f1"} device-1 | {"level":"info","message":"OPTIONS /devices/d1378b53-5863-440b-a968-fe051aead953/websocket 200 1ms","method":"OPTIONS","requestID":"b955c0b3a48700bcca984548e451a9f1","responseTime":1,"status":200,"url":"/devices/d1378b53-5863-440b-a968-fe051aead953/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3N30.CvmEuh_KU1vERbHNZZFwoCO3iX_tK9Wro4duqUO5kcI","level":"info","message":"auth send jwt","requestID":"fe4be5ea9f378904c4e2cc72af1653db"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"fe4be5ea9f378904c4e2cc72af1653db","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"fe4be5ea9f378904c4e2cc72af1653db"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":271,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:57Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":271,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.141713,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:57Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d1378b53-5863-440b-a968-fe051aead953","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"fe4be5ea9f378904c4e2cc72af1653db","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/d1378b53-5863-440b-a968-fe051aead953","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837877,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3N30.CvmEuh_KU1vERbHNZZFwoCO3iX_tK9Wro4duqUO5kcI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fe4be5ea9f378904c4e2cc72af1653db","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"fe4be5ea9f378904c4e2cc72af1653db"} gateway-1 | {"time_local":"24/Jul/2024:16:17:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/d1378b53-5863-440b-a968-fe051aead953/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":"fe4be5ea9f378904c4e2cc72af1653db"} device-1 | {"level":"info","message":"POST /devices/d1378b53-5863-440b-a968-fe051aead953/websocket 200 23ms","method":"POST","requestID":"fe4be5ea9f378904c4e2cc72af1653db","responseTime":23,"status":200,"url":"/devices/d1378b53-5863-440b-a968-fe051aead953/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/d1378b53-5863-440b-a968-fe051aead953' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3OH0.THGzmUrslqkFGqGiLaLfNYXLVQ4-t2e1OrJGEYGhBFM","level":"info","message":"auth send jwt","requestID":"bfeee22b087d3393c33c7fd6a40de6a0"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"bfeee22b087d3393c33c7fd6a40de6a0","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bfeee22b087d3393c33c7fd6a40de6a0"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":272,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:58Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":272,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.055938,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"bfeee22b087d3393c33c7fd6a40de6a0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837878,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3OH0.THGzmUrslqkFGqGiLaLfNYXLVQ4-t2e1OrJGEYGhBFM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bfeee22b087d3393c33c7fd6a40de6a0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c11a2ba-4dbf-4319-8f1d-43b769e59e62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c11a2ba-4dbf-4319-8f1d-43b769e59e62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:55.920737349Z"}]},"request_id":"26eb70d5-c4e5-4ef9-9c81-96e3532ac47c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837878.055801} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bfeee22b087d3393c33c7fd6a40de6a0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bfeee22b087d3393c33c7fd6a40de6a0"} device-1 | {"level":"info","message":"GET /devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62? 200 19ms","method":"GET","requestID":"bfeee22b087d3393c33c7fd6a40de6a0","responseTime":19,"status":200,"url":"/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62?"} gateway-1 | {"time_local":"24/Jul/2024:16:17:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bfeee22b087d3393c33c7fd6a40de6a0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3OH0.THGzmUrslqkFGqGiLaLfNYXLVQ4-t2e1OrJGEYGhBFM","level":"info","message":"auth send jwt","requestID":"3d26ccbf4312b445db3a562b0624077e"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"3d26ccbf4312b445db3a562b0624077e","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3d26ccbf4312b445db3a562b0624077e"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":273,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:58Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":273,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.177221,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d1378b53-5863-440b-a968-fe051aead953","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3d26ccbf4312b445db3a562b0624077e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/d1378b53-5863-440b-a968-fe051aead953","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837878,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3OH0.THGzmUrslqkFGqGiLaLfNYXLVQ4-t2e1OrJGEYGhBFM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3d26ccbf4312b445db3a562b0624077e","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1378b53-5863-440b-a968-fe051aead953","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1378b53-5863-440b-a968-fe051aead953","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:55.972269997Z"}]},"request_id":"849cefcd-2ecf-4823-8088-938c456ef68f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837878.0849102} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3d26ccbf4312b445db3a562b0624077e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3d26ccbf4312b445db3a562b0624077e"} gateway-1 | {"time_local":"24/Jul/2024:16:17:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d1378b53-5863-440b-a968-fe051aead953? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3d26ccbf4312b445db3a562b0624077e"} device-1 | {"level":"info","message":"GET /devices/d1378b53-5863-440b-a968-fe051aead953? 200 19ms","method":"GET","requestID":"3d26ccbf4312b445db3a562b0624077e","responseTime":19,"status":200,"url":"/devices/d1378b53-5863-440b-a968-fe051aead953?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3OH0.THGzmUrslqkFGqGiLaLfNYXLVQ4-t2e1OrJGEYGhBFM","level":"info","message":"auth send jwt","requestID":"7aff8e740b40203a83e86757f7cb231b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7aff8e740b40203a83e86757f7cb231b","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"7aff8e740b40203a83e86757f7cb231b"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":274,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:58Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":274,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.259187,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"7aff8e740b40203a83e86757f7cb231b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837878,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3OH0.THGzmUrslqkFGqGiLaLfNYXLVQ4-t2e1OrJGEYGhBFM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7aff8e740b40203a83e86757f7cb231b","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb5974ce-f85b-4d99-beb8-8813a56777f9"},"level":"info","message":"Attempting to run experiment","requestID":"7aff8e740b40203a83e86757f7cb231b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb5974ce-f85b-4d99-beb8-8813a56777f9"},"level":"info","message":"Attempting to book experiment","requestID":"7aff8e740b40203a83e86757f7cb231b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb5974ce-f85b-4d99-beb8-8813a56777f9"},"level":"info","message":"Successfully booked experiment","requestID":"7aff8e740b40203a83e86757f7cb231b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4a621440-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4a626260-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":275,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:58Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":275,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.926092,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:58Z"} authorization-1 | {"client_addr":"127.0.0.1:46174","level":"info","msg":"Received request.","req_id":276,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4a621440-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837878,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3OH0.THGzmUrslqkFGqGiLaLfNYXLVQ4-t2e1OrJGEYGhBFM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4a621440-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46174","level":"info","msg":"Sent response.","req_id":276,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.733333,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d1378b53-5863-440b-a968-fe051aead953","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4a626260-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/d1378b53-5863-440b-a968-fe051aead953","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837878,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3OH0.THGzmUrslqkFGqGiLaLfNYXLVQ4-t2e1OrJGEYGhBFM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4a626260-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c11a2ba-4dbf-4319-8f1d-43b769e59e62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c11a2ba-4dbf-4319-8f1d-43b769e59e62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:55.920737349Z"}]},"request_id":"fe497250-1b72-459b-9079-0095b55279db","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837878.1609414} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"4a621440-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1378b53-5863-440b-a968-fe051aead953","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1378b53-5863-440b-a968-fe051aead953","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:55.972269997Z"}]},"request_id":"4719321b-4863-4393-b984-d46795c77a87","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837878.162882} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"4a626260-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4a621440-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62? 200 23ms","method":"GET","requestID":"4a621440-49d8-11ef-9fe8-9113c2c8d024","responseTime":23,"status":200,"url":"/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4a626260-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/d1378b53-5863-440b-a968-fe051aead953? 200 23ms","method":"GET","requestID":"4a626260-49d8-11ef-9fe8-9113c2c8d024","responseTime":23,"status":200,"url":"/devices/d1378b53-5863-440b-a968-fe051aead953?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb5974ce-f85b-4d99-beb8-8813a56777f9"},"level":"info","message":"Setting up experiment","requestID":"7aff8e740b40203a83e86757f7cb231b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb5974ce-f85b-4d99-beb8-8813a56777f9"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"7aff8e740b40203a83e86757f7cb231b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb5974ce-f85b-4d99-beb8-8813a56777f9"},"level":"info","message":"Successfully locked booking for experiment","requestID":"7aff8e740b40203a83e86757f7cb231b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb5974ce-f85b-4d99-beb8-8813a56777f9"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"7aff8e740b40203a83e86757f7cb231b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb5974ce-f85b-4d99-beb8-8813a56777f9"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"7aff8e740b40203a83e86757f7cb231b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb5974ce-f85b-4d99-beb8-8813a56777f9"},"level":"info","message":"Attempting to update booking for experiment","requestID":"7aff8e740b40203a83e86757f7cb231b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb5974ce-f85b-4d99-beb8-8813a56777f9"},"level":"info","message":"Successfully updated booking for experiment","requestID":"7aff8e740b40203a83e86757f7cb231b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb5974ce-f85b-4d99-beb8-8813a56777f9"},"level":"info","message":"Successfully set up experiment","requestID":"7aff8e740b40203a83e86757f7cb231b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4a6cc2a0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4a6ce9b0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4a6d10c0-49d8-11ef-9fe8-9113c2c8d024"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb5974ce-f85b-4d99-beb8-8813a56777f9"},"level":"info","message":"Successfully running experiment","requestID":"7aff8e740b40203a83e86757f7cb231b"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":277,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:58Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":277,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.937635,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:58Z"} authorization-1 | {"client_addr":"127.0.0.1:46174","level":"info","msg":"Received request.","req_id":278,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4a6cc2a0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837878,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3OH0.THGzmUrslqkFGqGiLaLfNYXLVQ4-t2e1OrJGEYGhBFM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4a6cc2a0-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46174","level":"info","msg":"Sent response.","req_id":278,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.715183,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d1378b53-5863-440b-a968-fe051aead953","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4a6ce9b0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/d1378b53-5863-440b-a968-fe051aead953","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837878,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3OH0.THGzmUrslqkFGqGiLaLfNYXLVQ4-t2e1OrJGEYGhBFM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4a6ce9b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51392","level":"info","msg":"Received request.","req_id":279,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51392","level":"info","msg":"Sent response.","req_id":279,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.735341,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:58Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c11a2ba-4dbf-4319-8f1d-43b769e59e62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c11a2ba-4dbf-4319-8f1d-43b769e59e62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:55.920737349Z"}]},"request_id":"2f27b26a-9464-4b00-9768-6f0216756e13","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837878.2311575} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c11a2ba-4dbf-4319-8f1d-43b769e59e62","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2234b4bf-58f6-4143-983f-19a843a4c270","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837878.2312891} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1378b53-5863-440b-a968-fe051aead953","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1378b53-5863-440b-a968-fe051aead953","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:55.972269997Z"}]},"request_id":"810316b9-6077-46ea-9673-f044e012d640","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837878.2321904} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4a6cc2a0-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4a6d10c0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62","object_type":"device","rebac_allow":false,"scope_allow":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":"4a6d10c0-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4a6ce9b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4a6d10c0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62/signaling 200 18ms","method":"POST","requestID":"4a6d10c0-49d8-11ef-9fe8-9113c2c8d024","responseTime":18,"status":200,"url":"/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4a6cc2a0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62? 200 21ms","method":"GET","requestID":"4a6cc2a0-49d8-11ef-9fe8-9113c2c8d024","responseTime":21,"status":200,"url":"/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4a6ce9b0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffb5974ce-f85b-4d99-beb8-8813a56777f9#owner@http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffb5974ce-f85b-4d99-beb8-8813a56777f9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"133b2ff1-d356-4d70-b116-d712dd8a89fa","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837878.2401607} device-1 | {"level":"info","message":"GET /devices/d1378b53-5863-440b-a968-fe051aead953? 200 21ms","method":"GET","requestID":"4a6ce9b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":21,"status":200,"url":"/devices/d1378b53-5863-440b-a968-fe051aead953?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4a704510-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2c815d28-b318-4c0e-9e52-b2539ef743c0","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837878.2404745} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"7aff8e740b40203a83e86757f7cb231b","responseTime":17,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4a709330-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":280,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:58Z"} authorization-1 | {"client_addr":"127.0.0.1:46174","level":"info","msg":"Received request.","req_id":281,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:58Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1378b53-5863-440b-a968-fe051aead953","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a3378417-247f-46eb-80c0-66a18bdea203","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837878.2490153} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c11a2ba-4dbf-4319-8f1d-43b769e59e62","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e479a467-1743-4c25-81b5-645bf60a23d2","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837878.2497923} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":280,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.322824,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d1378b53-5863-440b-a968-fe051aead953","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4a704510-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d1378b53-5863-440b-a968-fe051aead953","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/fb5974ce-f85b-4d99-beb8-8813a56777f9","user":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"7aff8e740b40203a83e86757f7cb231b"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4a704510-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46174","level":"info","msg":"Sent response.","req_id":281,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.618876,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:58Z"} gateway-1 | {"time_local":"24/Jul/2024:16:17:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"781","request_time":"0.158","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7aff8e740b40203a83e86757f7cb231b"} experiment-1 | {"level":"info","message":"POST /experiments? 201 153ms","method":"POST","requestID":"7aff8e740b40203a83e86757f7cb231b","responseTime":153,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4a709330-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4a709330-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3OH0.THGzmUrslqkFGqGiLaLfNYXLVQ4-t2e1OrJGEYGhBFM","level":"info","message":"auth send jwt","requestID":"022d1e3abd6015b2e1806d26e28ab2da"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4a704510-49d8-11ef-9fe8-9113c2c8d024"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"022d1e3abd6015b2e1806d26e28ab2da","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"POST /devices/d1378b53-5863-440b-a968-fe051aead953/signaling 200 16ms","method":"POST","requestID":"4a704510-49d8-11ef-9fe8-9113c2c8d024","responseTime":16,"status":200,"url":"/devices/d1378b53-5863-440b-a968-fe051aead953/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4a709330-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62/signaling 200 14ms","method":"POST","requestID":"4a709330-49d8-11ef-9fe8-9113c2c8d024","responseTime":14,"status":200,"url":"/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"022d1e3abd6015b2e1806d26e28ab2da"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4a732b40-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":282,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:58Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":282,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.970645,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:58Z"} authorization-1 | {"client_addr":"127.0.0.1:46174","level":"info","msg":"Received request.","req_id":283,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"022d1e3abd6015b2e1806d26e28ab2da","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837878,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3OH0.THGzmUrslqkFGqGiLaLfNYXLVQ4-t2e1OrJGEYGhBFM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"022d1e3abd6015b2e1806d26e28ab2da","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1378b53-5863-440b-a968-fe051aead953","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"02a7ef85-fd57-439c-8de5-f28fdb592b90","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837878.2644277} authorization-1 | {"client_addr":"127.0.0.1:46174","level":"info","msg":"Sent response.","req_id":283,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.229732,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d1378b53-5863-440b-a968-fe051aead953","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4a732b40-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d1378b53-5863-440b-a968-fe051aead953","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4a732b40-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4a732b40-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c11a2ba-4dbf-4319-8f1d-43b769e59e62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c11a2ba-4dbf-4319-8f1d-43b769e59e62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:55.920737349Z"}]},"request_id":"996c4ef3-d7f1-4241-871d-640d6ea77a0a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837878.2682412} device-1 | {"level":"info","message":"POST /devices/d1378b53-5863-440b-a968-fe051aead953/signaling 200 8ms","method":"POST","requestID":"4a732b40-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/devices/d1378b53-5863-440b-a968-fe051aead953/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"022d1e3abd6015b2e1806d26e28ab2da","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb5974ce-f85b-4d99-beb8-8813a56777f9"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"7aff8e740b40203a83e86757f7cb231b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb5974ce-f85b-4d99-beb8-8813a56777f9"},"level":"info","message":"Building connection plan","requestID":"7aff8e740b40203a83e86757f7cb231b"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"e199a230-7663-4720-a4a4-2e8d3f7326f6"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"881c36d0-a217-4cb6-92e6-16a257906170"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/file","uuid":"e09ed5df-c9b2-4acf-8f50-bbfe14845a82"}]},"level":"info","message":"Built pairwise service configurations","requestID":"7aff8e740b40203a83e86757f7cb231b"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/d1378b53-5863-440b-a968-fe051aead953"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"7aff8e740b40203a83e86757f7cb231b"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"4a752710-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"022d1e3abd6015b2e1806d26e28ab2da"} gateway-1 | {"time_local":"24/Jul/2024:16:17:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"022d1e3abd6015b2e1806d26e28ab2da"} device-1 | {"level":"info","message":"GET /devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62? 200 17ms","method":"GET","requestID":"022d1e3abd6015b2e1806d26e28ab2da","responseTime":17,"status":200,"url":"/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62?"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":284,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:58Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":284,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.866203,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4a752710-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837878,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3OH0.THGzmUrslqkFGqGiLaLfNYXLVQ4-t2e1OrJGEYGhBFM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4a752710-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3OH0.THGzmUrslqkFGqGiLaLfNYXLVQ4-t2e1OrJGEYGhBFM","level":"info","message":"auth send jwt","requestID":"ebce42b70d02e3d85264373d963c15c8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ebce42b70d02e3d85264373d963c15c8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ebce42b70d02e3d85264373d963c15c8"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":285,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:58Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":285,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.707319,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d1378b53-5863-440b-a968-fe051aead953","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"ebce42b70d02e3d85264373d963c15c8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/d1378b53-5863-440b-a968-fe051aead953","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837878,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg3OH0.THGzmUrslqkFGqGiLaLfNYXLVQ4-t2e1OrJGEYGhBFM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ebce42b70d02e3d85264373d963c15c8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","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%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"df86d35a-bcf4-4001-9558-950c7a0df56f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837878.2885144} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7e26b5fc-137b-4ae6-b0b2-2add65f92424","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837878.288702} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"4a752710-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1378b53-5863-440b-a968-fe051aead953","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1378b53-5863-440b-a968-fe051aead953","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:17:55.972269997Z"}]},"request_id":"6da7da40-9739-4571-904d-ca7395c9e4a0","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837878.2941744} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ebce42b70d02e3d85264373d963c15c8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"4a752710-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"4a752710-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/00385eea-4b71-44b6-819b-90db9b7cdeab'","requestID":"4a752710-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/00385eea-4b71-44b6-819b-90db9b7cdeab'","requestID":"4a752710-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"4a752710-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 36ms","method":"POST","requestID":"4a752710-49d8-11ef-9fe8-9113c2c8d024","responseTime":36,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ebce42b70d02e3d85264373d963c15c8"} gateway-1 | {"time_local":"24/Jul/2024:16:17:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d1378b53-5863-440b-a968-fe051aead953? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.034","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ebce42b70d02e3d85264373d963c15c8"} device-1 | {"level":"info","message":"GET /devices/d1378b53-5863-440b-a968-fe051aead953? 200 27ms","method":"GET","requestID":"ebce42b70d02e3d85264373d963c15c8","responseTime":27,"status":200,"url":"/devices/d1378b53-5863-440b-a968-fe051aead953?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"4a752710-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/00385eea-4b71-44b6-819b-90db9b7cdeab","device":"d1378b53-5863-440b-a968-fe051aead953","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}],"tiebreaker":false} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb5974ce-f85b-4d99-beb8-8813a56777f9"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"7aff8e740b40203a83e86757f7cb231b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4a7f8750-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":286,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:58Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c11a2ba-4dbf-4319-8f1d-43b769e59e62","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dce8b83e-9c9d-4676-a4d6-433dc3862168","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837878.346537} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":286,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.389494,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4a7f8750-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4a7f8750-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4a7f8750-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62/signaling 200 9ms","method":"POST","requestID":"4a7f8750-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4a813500-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":287,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:17:58Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1378b53-5863-440b-a968-fe051aead953","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bbbce2be-a080-4cde-811e-708031561262","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837878.357251} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":287,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.877363,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:17:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d1378b53-5863-440b-a968-fe051aead953","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4a813500-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d1378b53-5863-440b-a968-fe051aead953","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4a813500-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4a813500-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/d1378b53-5863-440b-a968-fe051aead953/signaling 200 9ms","method":"POST","requestID":"4a813500-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/devices/d1378b53-5863-440b-a968-fe051aead953/signaling"} device-1 | {"device":"d1378b53-5863-440b-a968-fe051aead953","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"d1378b53-5863-440b-a968-fe051aead953","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"0c11a2ba-4dbf-4319-8f1d-43b769e59e62","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"00385eea-4b71-44b6-819b-90db9b7cdeab","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 2460814689829465110 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:WlhY\r\na=ice-pwd:O7b6RaHVknBp4wmANXoShuC9\r\na=ice-options:trickle\r\na=fingerprint:sha-256 E3:C8:05:5E:1E:BA:7D:CF:80:C0:08:98:5C:A1:D2:10:90:10:4C:B9:2E:08:F4:82:A4:FE:BC:68:EB:B4:70:D2\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"d1378b53-5863-440b-a968-fe051aead953","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:4229319518 1 udp 2113937151 cf095b71-8bec-4f0f-bb2d-4c3a7b6bfe82.local 37529 typ host generation 0 ufrag WlhY network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"d1378b53-5863-440b-a968-fe051aead953","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"d1378b53-5863-440b-a968-fe051aead953","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"0c11a2ba-4dbf-4319-8f1d-43b769e59e62","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"0c11a2ba-4dbf-4319-8f1d-43b769e59e62","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"0c11a2ba-4dbf-4319-8f1d-43b769e59e62","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"content":{"candidate":"candidate:1866328653 1 udp 1677729535 141.24.211.56 37529 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag WlhY network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"d1378b53-5863-440b-a968-fe051aead953","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/00385eea-4b71-44b6-819b-90db9b7cdeab' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"00385eea-4b71-44b6-819b-90db9b7cdeab","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"d1378b53-5863-440b-a968-fe051aead953","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/d1378b53-5863-440b-a968-fe051aead953'"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"af37e5ceeb6501fc9fc756f94d246674","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"af37e5ceeb6501fc9fc756f94d246674","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/d1378b53-5863-440b-a968-fe051aead953"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/00385eea-4b71-44b6-819b-90db9b7cdeab"}}},"level":"info","message":"received a callback","requestID":"af37e5ceeb6501fc9fc756f94d246674"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"af37e5ceeb6501fc9fc756f94d246674","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"af37e5ceeb6501fc9fc756f94d246674"} device-1 | {"data":{"peerconnection":"00385eea-4b71-44b6-819b-90db9b7cdeab","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"0c11a2ba-4dbf-4319-8f1d-43b769e59e62","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d1378b53-5863-440b-a968-fe051aead953","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"0c11a2ba-4dbf-4319-8f1d-43b769e59e62","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"00385eea-4b71-44b6-819b-90db9b7cdeab","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"d1378b53-5863-440b-a968-fe051aead953","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/00385eea-4b71-44b6-819b-90db9b7cdeab' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"00385eea-4b71-44b6-819b-90db9b7cdeab","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6dd99f52c1a0ece31b7df45c1d7ac4da","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"6dd99f52c1a0ece31b7df45c1d7ac4da","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/d1378b53-5863-440b-a968-fe051aead953"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/00385eea-4b71-44b6-819b-90db9b7cdeab"}}},"level":"info","message":"received a callback","requestID":"6dd99f52c1a0ece31b7df45c1d7ac4da"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"4bcaf310-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":288,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:00Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F00385eea-4b71-44b6-819b-90db9b7cdeab","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b531d4c8-3425-4c7a-93eb-372d04230a5f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837880.5207472} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":288,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.501907,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/00385eea-4b71-44b6-819b-90db9b7cdeab","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4bcaf310-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/00385eea-4b71-44b6-819b-90db9b7cdeab","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":"4bcaf310-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"4bcaf310-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /peerconnections/00385eea-4b71-44b6-819b-90db9b7cdeab 200 13ms","method":"GET","requestID":"4bcaf310-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/peerconnections/00385eea-4b71-44b6-819b-90db9b7cdeab"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 44ms","method":"POST","requestID":"6dd99f52c1a0ece31b7df45c1d7ac4da","responseTime":44,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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.049","http_referrer":"","http_user_agent":"node-fetch","requestID":"6dd99f52c1a0ece31b7df45c1d7ac4da"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4bd07150-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":289,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:00Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1378b53-5863-440b-a968-fe051aead953","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cefa1507-74ae-426b-9059-6915ed8d6bec","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837880.5547981} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":289,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.046126,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d1378b53-5863-440b-a968-fe051aead953","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4bd07150-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d1378b53-5863-440b-a968-fe051aead953","object_type":"device","rebac_allow":false,"scope_allow":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":"4bd07150-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4bd07150-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/d1378b53-5863-440b-a968-fe051aead953/signaling 200 11ms","method":"POST","requestID":"4bd07150-49d8-11ef-9fe8-9113c2c8d024","responseTime":11,"status":200,"url":"/devices/d1378b53-5863-440b-a968-fe051aead953/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4bd26d20-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":290,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:00Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c11a2ba-4dbf-4319-8f1d-43b769e59e62","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f5078592-fd59-4181-ab0f-663eb060eb49","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837880.566564} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":290,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.466647,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4bd26d20-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4bd26d20-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4bd26d20-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62/signaling 200 9ms","method":"POST","requestID":"4bd26d20-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4MH0.-kV2ITgsrMpzah917p0HWNLGLLt_2P1FBLjFHynEA68","level":"info","message":"auth send jwt","requestID":"b1da9419d1f57e27604d0c907d78ae94"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"b1da9419d1f57e27604d0c907d78ae94","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/fb5974ce-f85b-4d99-beb8-8813a56777f9","requestID":"b1da9419d1f57e27604d0c907d78ae94"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":291,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:00Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":291,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.199799,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/fb5974ce-f85b-4d99-beb8-8813a56777f9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"b1da9419d1f57e27604d0c907d78ae94","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/fb5974ce-f85b-4d99-beb8-8813a56777f9","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837880,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4MH0.-kV2ITgsrMpzah917p0HWNLGLLt_2P1FBLjFHynEA68"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b1da9419d1f57e27604d0c907d78ae94","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/fb5974ce-f85b-4d99-beb8-8813a56777f9","requestID":"b1da9419d1f57e27604d0c907d78ae94"} gateway-1 | {"time_local":"24/Jul/2024:16:18:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/fb5974ce-f85b-4d99-beb8-8813a56777f9 HTTP/1.1","status": "200","body_bytes_sent":"854","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b1da9419d1f57e27604d0c907d78ae94"} experiment-1 | {"level":"info","message":"GET /experiments/fb5974ce-f85b-4d99-beb8-8813a56777f9 200 16ms","method":"GET","requestID":"b1da9419d1f57e27604d0c907d78ae94","responseTime":16,"status":200,"url":"/experiments/fb5974ce-f85b-4d99-beb8-8813a56777f9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4MH0.-kV2ITgsrMpzah917p0HWNLGLLt_2P1FBLjFHynEA68","level":"info","message":"auth send jwt","requestID":"cab457deae950c5e2244024e088ffa6d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"cab457deae950c5e2244024e088ffa6d","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/fb5974ce-f85b-4d99-beb8-8813a56777f9","requestID":"cab457deae950c5e2244024e088ffa6d"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":292,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:00Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":292,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.245529,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:00Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/fb5974ce-f85b-4d99-beb8-8813a56777f9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"cab457deae950c5e2244024e088ffa6d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/fb5974ce-f85b-4d99-beb8-8813a56777f9","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837880,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4MH0.-kV2ITgsrMpzah917p0HWNLGLLt_2P1FBLjFHynEA68"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cab457deae950c5e2244024e088ffa6d","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb5974ce-f85b-4d99-beb8-8813a56777f9"},"level":"info","message":"Attempting to finish experiment","requestID":"cab457deae950c5e2244024e088ffa6d"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"4bf13fc0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":293,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:00Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":293,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.304808,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:00Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/00385eea-4b71-44b6-819b-90db9b7cdeab","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4bf13fc0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:http://localhost/peerconnections/00385eea-4b71-44b6-819b-90db9b7cdeab","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837880,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4MH0.-kV2ITgsrMpzah917p0HWNLGLLt_2P1FBLjFHynEA68"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4bf13fc0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/00385eea-4b71-44b6-819b-90db9b7cdeab","device":"d1378b53-5863-440b-a968-fe051aead953","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"0c11a2ba-4dbf-4319-8f1d-43b769e59e62","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"0c11a2ba-4dbf-4319-8f1d-43b769e59e62","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"0c11a2ba-4dbf-4319-8f1d-43b769e59e62","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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/00385eea-4b71-44b6-819b-90db9b7cdeab' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/00385eea-4b71-44b6-819b-90db9b7cdeab' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"00385eea-4b71-44b6-819b-90db9b7cdeab","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F00385eea-4b71-44b6-819b-90db9b7cdeab': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F00385eea-4b71-44b6-819b-90db9b7cdeab","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"8c329829-b628-49b1-8cf8-b1393348f40f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837880.7863708} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b4ccad4f-a251-42b7-9a93-b21cac39141c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837880.7870548} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c02ac3280bcc6da576ed29624fa1a731","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"4bf13fc0-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c02ac3280bcc6da576ed29624fa1a731","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"42c17133386bcac98048fbe7de8edb8e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"42c17133386bcac98048fbe7de8edb8e","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/d1378b53-5863-440b-a968-fe051aead953"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/00385eea-4b71-44b6-819b-90db9b7cdeab"}}},"level":"info","message":"received a callback","requestID":"c02ac3280bcc6da576ed29624fa1a731"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/d1378b53-5863-440b-a968-fe051aead953"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/00385eea-4b71-44b6-819b-90db9b7cdeab"}}},"level":"info","message":"received a callback","requestID":"42c17133386bcac98048fbe7de8edb8e"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"4bf13fc0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"DELETE /peerconnections/00385eea-4b71-44b6-819b-90db9b7cdeab 204 45ms","method":"DELETE","requestID":"4bf13fc0-49d8-11ef-9fe8-9113c2c8d024","responseTime":45,"status":204,"url":"/peerconnections/00385eea-4b71-44b6-819b-90db9b7cdeab"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb5974ce-f85b-4d99-beb8-8813a56777f9"},"level":"info","message":"Successfully finished experiment","requestID":"cab457deae950c5e2244024e088ffa6d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4bfc1530-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":294,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:00Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1378b53-5863-440b-a968-fe051aead953","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9a84a9ae-35fc-4d9c-b314-f38ab7a68c9d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837880.8416693} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":294,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.977316,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d1378b53-5863-440b-a968-fe051aead953","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4bfc1530-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d1378b53-5863-440b-a968-fe051aead953","object_type":"device","rebac_allow":false,"scope_allow":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":"4bfc1530-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4bfc1530-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/d1378b53-5863-440b-a968-fe051aead953/signaling 200 12ms","method":"POST","requestID":"4bfc1530-49d8-11ef-9fe8-9113c2c8d024","responseTime":12,"status":200,"url":"/devices/d1378b53-5863-440b-a968-fe051aead953/signaling"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffb5974ce-f85b-4d99-beb8-8813a56777f9': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffb5974ce-f85b-4d99-beb8-8813a56777f9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"f91529b6-cba9-4426-8475-c9dcefa90cbe","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837880.8485084} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"99d3fd0c-eb63-4e51-9132-641a5b58555b","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837880.8490226} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"cab457deae950c5e2244024e088ffa6d","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4bfe8630-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":295,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:00Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c11a2ba-4dbf-4319-8f1d-43b769e59e62","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5e37423b-cf08-405b-89f6-ff4e715b9f1d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837880.856521} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":295,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.967322,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4bfe8630-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4bfe8630-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4bfe8630-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62/signaling 200 11ms","method":"POST","requestID":"4bfe8630-49d8-11ef-9fe8-9113c2c8d024","responseTime":11,"status":200,"url":"/devices/0c11a2ba-4dbf-4319-8f1d-43b769e59e62/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/fb5974ce-f85b-4d99-beb8-8813a56777f9","requestID":"cab457deae950c5e2244024e088ffa6d"} gateway-1 | {"time_local":"24/Jul/2024:16:18:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/fb5974ce-f85b-4d99-beb8-8813a56777f9 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.177","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cab457deae950c5e2244024e088ffa6d"} gateway-1 | {"time_local":"24/Jul/2024:16:18:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2582","request_time":"4.396","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"b4c4c4bcc2a15c9f8fb0f358c7f802bb"} experiment-1 | {"level":"info","message":"DELETE /experiments/fb5974ce-f85b-4d99-beb8-8813a56777f9 204 172ms","method":"DELETE","requestID":"cab457deae950c5e2244024e088ffa6d","responseTime":172,"status":204,"url":"/experiments/fb5974ce-f85b-4d99-beb8-8813a56777f9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 131ms","method":"POST","requestID":"c02ac3280bcc6da576ed29624fa1a731","responseTime":131,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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.135","http_referrer":"","http_user_agent":"node-fetch","requestID":"c02ac3280bcc6da576ed29624fa1a731"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 130ms","method":"POST","requestID":"42c17133386bcac98048fbe7de8edb8e","responseTime":130,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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.137","http_referrer":"","http_user_agent":"node-fetch","requestID":"42c17133386bcac98048fbe7de8edb8e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4MH0.-kV2ITgsrMpzah917p0HWNLGLLt_2P1FBLjFHynEA68","level":"info","message":"auth send jwt","requestID":"d75947e2694767f7c86d304a00dedfca"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d75947e2694767f7c86d304a00dedfca","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"d75947e2694767f7c86d304a00dedfca"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":296,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:00Z"} gateway-1 | {"time_local":"24/Jul/2024:16:18:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2490","request_time":"2.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":"26e00f0d34a12e58e1a3b397a8f28ef0"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":296,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.345897,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:00Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"d75947e2694767f7c86d304a00dedfca","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837880,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4MH0.-kV2ITgsrMpzah917p0HWNLGLLt_2P1FBLjFHynEA68"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d75947e2694767f7c86d304a00dedfca","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/0c11a2ba-4dbf-4319-8f1d-43b769e59e62' 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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21002d6-317a-448c-8953-08c0b3a6c2d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"f01594eb-dc20-4052-9f59-ad6430c887ab","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837880.9474537} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d75947e2694767f7c86d304a00dedfca","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/d1378b53-5863-440b-a968-fe051aead953' 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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0617ca4d-e3e3-41db-af8f-5920fafa2f32","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837880.9530113} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"d75947e2694767f7c86d304a00dedfca","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21002d6-317a-448c-8953-08c0b3a6c2d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"5fc32d3b-86de-49d9-81f6-39c254421ca0","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837880.9623222} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5ac1ca5e-6506-455d-9145-e5c681ab4560","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837880.9624336} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"d75947e2694767f7c86d304a00dedfca","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21002d6-317a-448c-8953-08c0b3a6c2d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21002d6-317a-448c-8953-08c0b3a6c2d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:00.962303849Z"}]},"request_id":"2968ac33-4dc3-4f7b-87bf-8646f2d6df1f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837880.9672601} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d75947e2694767f7c86d304a00dedfca","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d75947e2694767f7c86d304a00dedfca"} gateway-1 | {"time_local":"24/Jul/2024:16:18:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d75947e2694767f7c86d304a00dedfca"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"d75947e2694767f7c86d304a00dedfca","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4MH0.-kV2ITgsrMpzah917p0HWNLGLLt_2P1FBLjFHynEA68","level":"info","message":"auth send jwt","requestID":"cc8da253006a5934cdf472049e945865"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"cc8da253006a5934cdf472049e945865","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"cc8da253006a5934cdf472049e945865"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":297,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:00Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":297,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.743728,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:00Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"cc8da253006a5934cdf472049e945865","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837880,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4MH0.-kV2ITgsrMpzah917p0HWNLGLLt_2P1FBLjFHynEA68"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"cc8da253006a5934cdf472049e945865","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2238ee33-0f73-4ba0-8ed6-73f083dd8595","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"115e0349-7e4d-4916-80a3-25719ae2d99d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837880.9962983} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cc8da253006a5934cdf472049e945865","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"51c144af-3bf2-464c-a250-6731b4f4b2f2","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837881.0011208} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"cc8da253006a5934cdf472049e945865","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2238ee33-0f73-4ba0-8ed6-73f083dd8595","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"52c67e9f-6f7d-4c78-aef6-23e3051305ec","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837881.0120018} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d36c6370-db33-44d8-bfa1-1e8b09d0595f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837881.0122907} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"cc8da253006a5934cdf472049e945865","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2238ee33-0f73-4ba0-8ed6-73f083dd8595","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2238ee33-0f73-4ba0-8ed6-73f083dd8595","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:01.011973421Z"}]},"request_id":"2fa9b2a0-6aeb-4cd7-a8d6-2edd9ea8db32","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837881.0163507} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cc8da253006a5934cdf472049e945865","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"cc8da253006a5934cdf472049e945865"} gateway-1 | {"time_local":"24/Jul/2024:16:18:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cc8da253006a5934cdf472049e945865"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"cc8da253006a5934cdf472049e945865","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4MX0.w5OPk5imnCLp-BTvJfFvPExKXLvUlA7pf0tzP9YqkDk","level":"info","message":"auth send jwt","requestID":"19de32e0b51aea494be53eae9be5fea6"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"19de32e0b51aea494be53eae9be5fea6","responseTime":8,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4MX0.w5OPk5imnCLp-BTvJfFvPExKXLvUlA7pf0tzP9YqkDk","level":"info","message":"auth send jwt","requestID":"ca02462e11d10be8a1a223d1be467d65"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"ca02462e11d10be8a1a223d1be467d65","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"19de32e0b51aea494be53eae9be5fea6"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"ca02462e11d10be8a1a223d1be467d65"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":298,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:01Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":298,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.732788,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:01Z"} authorization-1 | {"client_addr":"127.0.0.1:46174","level":"info","msg":"Received request.","req_id":299,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:01Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e21002d6-317a-448c-8953-08c0b3a6c2d5","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"19de32e0b51aea494be53eae9be5fea6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/e21002d6-317a-448c-8953-08c0b3a6c2d5","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837881,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4MX0.w5OPk5imnCLp-BTvJfFvPExKXLvUlA7pf0tzP9YqkDk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"19de32e0b51aea494be53eae9be5fea6","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46174","level":"info","msg":"Sent response.","req_id":299,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.481913,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:01Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"ca02462e11d10be8a1a223d1be467d65","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837881,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4MX0.w5OPk5imnCLp-BTvJfFvPExKXLvUlA7pf0tzP9YqkDk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ca02462e11d10be8a1a223d1be467d65","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21002d6-317a-448c-8953-08c0b3a6c2d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21002d6-317a-448c-8953-08c0b3a6c2d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:00.962303849Z"}]},"request_id":"25f83ba8-468c-439f-9804-51e50ffc705e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837881.5074394} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"19de32e0b51aea494be53eae9be5fea6","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2238ee33-0f73-4ba0-8ed6-73f083dd8595","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2238ee33-0f73-4ba0-8ed6-73f083dd8595","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:01.011973421Z"}]},"request_id":"47d33745-2989-4569-b960-289bb7fd78e3","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837881.5083246} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ca02462e11d10be8a1a223d1be467d65","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3225143d-5aa7-4745-b008-07c2c8705452","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837881.5130794} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"19de32e0b51aea494be53eae9be5fea6","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9d4544df-ff7f-4690-9a9d-da6946b4e792","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837881.5148814} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"ca02462e11d10be8a1a223d1be467d65","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21002d6-317a-448c-8953-08c0b3a6c2d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21002d6-317a-448c-8953-08c0b3a6c2d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:00.962303849Z"}]},"request_id":"7b9b191a-7bc2-414f-81a2-ecec6a39b8bb","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837881.5187166} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"19de32e0b51aea494be53eae9be5fea6","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"19de32e0b51aea494be53eae9be5fea6"} device-1 | {"level":"info","message":"PATCH /devices/e21002d6-317a-448c-8953-08c0b3a6c2d5 200 27ms","method":"PATCH","requestID":"19de32e0b51aea494be53eae9be5fea6","responseTime":27,"status":200,"url":"/devices/e21002d6-317a-448c-8953-08c0b3a6c2d5"} gateway-1 | {"time_local":"24/Jul/2024:16:18:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/e21002d6-317a-448c-8953-08c0b3a6c2d5 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.037","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"19de32e0b51aea494be53eae9be5fea6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4MX0.w5OPk5imnCLp-BTvJfFvPExKXLvUlA7pf0tzP9YqkDk","level":"info","message":"auth send jwt","requestID":"61914395b453b209cd37663665ab718b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"61914395b453b209cd37663665ab718b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"61914395b453b209cd37663665ab718b"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2238ee33-0f73-4ba0-8ed6-73f083dd8595","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2238ee33-0f73-4ba0-8ed6-73f083dd8595","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:01.011973421Z"}]},"request_id":"6ff1f653-46be-459a-bc3a-8641dc97ddb4","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837881.5307577} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ca02462e11d10be8a1a223d1be467d65","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":300,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:01Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":300,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.678271,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:01Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"ca02462e11d10be8a1a223d1be467d65"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e21002d6-317a-448c-8953-08c0b3a6c2d5","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"61914395b453b209cd37663665ab718b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/e21002d6-317a-448c-8953-08c0b3a6c2d5","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837881,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4MX0.w5OPk5imnCLp-BTvJfFvPExKXLvUlA7pf0tzP9YqkDk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"61914395b453b209cd37663665ab718b","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"24/Jul/2024:16:18:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.050","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"ca02462e11d10be8a1a223d1be467d65"} device-1 | {"level":"info","message":"PATCH /devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595 200 38ms","method":"PATCH","requestID":"ca02462e11d10be8a1a223d1be467d65","responseTime":38,"status":200,"url":"/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4MX0.w5OPk5imnCLp-BTvJfFvPExKXLvUlA7pf0tzP9YqkDk","level":"info","message":"auth send jwt","requestID":"adf0e7c9d03bcca47bf4d281d396d8a3"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"adf0e7c9d03bcca47bf4d281d396d8a3","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"adf0e7c9d03bcca47bf4d281d396d8a3"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":301,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:01Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":301,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.755504,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:01Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"adf0e7c9d03bcca47bf4d281d396d8a3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837881,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4MX0.w5OPk5imnCLp-BTvJfFvPExKXLvUlA7pf0tzP9YqkDk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"adf0e7c9d03bcca47bf4d281d396d8a3","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"61914395b453b209cd37663665ab718b"} gateway-1 | {"time_local":"24/Jul/2024:16:18:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/e21002d6-317a-448c-8953-08c0b3a6c2d5/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"61914395b453b209cd37663665ab718b"} device-1 | {"level":"info","message":"POST /devices/e21002d6-317a-448c-8953-08c0b3a6c2d5/websocket 200 20ms","method":"POST","requestID":"61914395b453b209cd37663665ab718b","responseTime":20,"status":200,"url":"/devices/e21002d6-317a-448c-8953-08c0b3a6c2d5/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"adf0e7c9d03bcca47bf4d281d396d8a3"} device-1 | {"level":"info","message":"POST /devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595/websocket 200 19ms","method":"POST","requestID":"adf0e7c9d03bcca47bf4d281d396d8a3","responseTime":19,"status":200,"url":"/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595/websocket"} gateway-1 | {"time_local":"24/Jul/2024:16:18:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"adf0e7c9d03bcca47bf4d281d396d8a3"} device-1 | {"level":"info","message":"device 'http://localhost/devices/e21002d6-317a-448c-8953-08c0b3a6c2d5' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4MX0.w5OPk5imnCLp-BTvJfFvPExKXLvUlA7pf0tzP9YqkDk","level":"info","message":"auth send jwt","requestID":"b51fd7e6d2b754ba2e66d20c2fbcae2e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b51fd7e6d2b754ba2e66d20c2fbcae2e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b51fd7e6d2b754ba2e66d20c2fbcae2e"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":302,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:01Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":302,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.667042,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e21002d6-317a-448c-8953-08c0b3a6c2d5","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"b51fd7e6d2b754ba2e66d20c2fbcae2e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/e21002d6-317a-448c-8953-08c0b3a6c2d5","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837881,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4MX0.w5OPk5imnCLp-BTvJfFvPExKXLvUlA7pf0tzP9YqkDk"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"b51fd7e6d2b754ba2e66d20c2fbcae2e","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21002d6-317a-448c-8953-08c0b3a6c2d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21002d6-317a-448c-8953-08c0b3a6c2d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:00.962303849Z"}]},"request_id":"acb55d93-df4b-4db2-b335-4a9f424f3fa2","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837881.5838513} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b51fd7e6d2b754ba2e66d20c2fbcae2e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b51fd7e6d2b754ba2e66d20c2fbcae2e"} gateway-1 | {"time_local":"24/Jul/2024:16:18:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e21002d6-317a-448c-8953-08c0b3a6c2d5? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b51fd7e6d2b754ba2e66d20c2fbcae2e"} device-1 | {"level":"info","message":"GET /devices/e21002d6-317a-448c-8953-08c0b3a6c2d5? 200 11ms","method":"GET","requestID":"b51fd7e6d2b754ba2e66d20c2fbcae2e","responseTime":11,"status":200,"url":"/devices/e21002d6-317a-448c-8953-08c0b3a6c2d5?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4MX0.w5OPk5imnCLp-BTvJfFvPExKXLvUlA7pf0tzP9YqkDk","level":"info","message":"auth send jwt","requestID":"031aa2d4847863f764699ea94fc9a9f6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"031aa2d4847863f764699ea94fc9a9f6","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"031aa2d4847863f764699ea94fc9a9f6"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":303,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:01Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":303,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.707093,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"031aa2d4847863f764699ea94fc9a9f6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837881,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4MX0.w5OPk5imnCLp-BTvJfFvPExKXLvUlA7pf0tzP9YqkDk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"031aa2d4847863f764699ea94fc9a9f6","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2238ee33-0f73-4ba0-8ed6-73f083dd8595","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2238ee33-0f73-4ba0-8ed6-73f083dd8595","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:01.011973421Z"}]},"request_id":"aaba98f9-05f0-49cd-85cc-5e22837df305","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837881.6012492} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"031aa2d4847863f764699ea94fc9a9f6","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"031aa2d4847863f764699ea94fc9a9f6"} gateway-1 | {"time_local":"24/Jul/2024:16:18:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"031aa2d4847863f764699ea94fc9a9f6"} device-1 | {"level":"info","message":"GET /devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595? 200 11ms","method":"GET","requestID":"031aa2d4847863f764699ea94fc9a9f6","responseTime":11,"status":200,"url":"/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4MX0.w5OPk5imnCLp-BTvJfFvPExKXLvUlA7pf0tzP9YqkDk","level":"info","message":"auth send jwt","requestID":"c35298650426ca2c2f4a7bc2543a9ec7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c35298650426ca2c2f4a7bc2543a9ec7","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"c35298650426ca2c2f4a7bc2543a9ec7"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":304,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:01Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":304,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.704699,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:01Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"c35298650426ca2c2f4a7bc2543a9ec7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837881,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4MX0.w5OPk5imnCLp-BTvJfFvPExKXLvUlA7pf0tzP9YqkDk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c35298650426ca2c2f4a7bc2543a9ec7","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9109d708-5d4c-49ee-b4d5-b1c3d4c87733"},"level":"info","message":"Attempting to run experiment","requestID":"c35298650426ca2c2f4a7bc2543a9ec7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9109d708-5d4c-49ee-b4d5-b1c3d4c87733"},"level":"info","message":"Attempting to book experiment","requestID":"c35298650426ca2c2f4a7bc2543a9ec7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9109d708-5d4c-49ee-b4d5-b1c3d4c87733"},"level":"info","message":"Successfully booked experiment","requestID":"c35298650426ca2c2f4a7bc2543a9ec7"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4c7738a0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4c7786c0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":305,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:01Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":305,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.246044,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:01Z"} authorization-1 | {"client_addr":"127.0.0.1:46174","level":"info","msg":"Received request.","req_id":306,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e21002d6-317a-448c-8953-08c0b3a6c2d5","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4c7738a0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/e21002d6-317a-448c-8953-08c0b3a6c2d5","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837881,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4MX0.w5OPk5imnCLp-BTvJfFvPExKXLvUlA7pf0tzP9YqkDk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4c7738a0-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46174","level":"info","msg":"Sent response.","req_id":306,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.593968,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4c7786c0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837881,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4MX0.w5OPk5imnCLp-BTvJfFvPExKXLvUlA7pf0tzP9YqkDk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4c7786c0-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21002d6-317a-448c-8953-08c0b3a6c2d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21002d6-317a-448c-8953-08c0b3a6c2d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:00.962303849Z"}]},"request_id":"f7932303-19eb-459c-bdd8-a81f18b3b4e9","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837881.6518474} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4c7738a0-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2238ee33-0f73-4ba0-8ed6-73f083dd8595","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2238ee33-0f73-4ba0-8ed6-73f083dd8595","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:01.011973421Z"}]},"request_id":"5d6fbf05-d68f-4039-bd68-27ab3e098fec","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837881.6531851} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4c7786c0-49d8-11ef-9fe8-9113c2c8d024","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4c7738a0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/e21002d6-317a-448c-8953-08c0b3a6c2d5? 200 16ms","method":"GET","requestID":"4c7738a0-49d8-11ef-9fe8-9113c2c8d024","responseTime":16,"status":200,"url":"/devices/e21002d6-317a-448c-8953-08c0b3a6c2d5?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4c7786c0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595? 200 14ms","method":"GET","requestID":"4c7786c0-49d8-11ef-9fe8-9113c2c8d024","responseTime":14,"status":200,"url":"/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9109d708-5d4c-49ee-b4d5-b1c3d4c87733"},"level":"info","message":"Setting up experiment","requestID":"c35298650426ca2c2f4a7bc2543a9ec7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9109d708-5d4c-49ee-b4d5-b1c3d4c87733"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"c35298650426ca2c2f4a7bc2543a9ec7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9109d708-5d4c-49ee-b4d5-b1c3d4c87733"},"level":"info","message":"Successfully locked booking for experiment","requestID":"c35298650426ca2c2f4a7bc2543a9ec7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9109d708-5d4c-49ee-b4d5-b1c3d4c87733"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"c35298650426ca2c2f4a7bc2543a9ec7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9109d708-5d4c-49ee-b4d5-b1c3d4c87733"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"c35298650426ca2c2f4a7bc2543a9ec7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9109d708-5d4c-49ee-b4d5-b1c3d4c87733"},"level":"info","message":"Attempting to update booking for experiment","requestID":"c35298650426ca2c2f4a7bc2543a9ec7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9109d708-5d4c-49ee-b4d5-b1c3d4c87733"},"level":"info","message":"Successfully updated booking for experiment","requestID":"c35298650426ca2c2f4a7bc2543a9ec7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9109d708-5d4c-49ee-b4d5-b1c3d4c87733"},"level":"info","message":"Successfully set up experiment","requestID":"c35298650426ca2c2f4a7bc2543a9ec7"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4c8198e0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4c81e700-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4c820e10-49d8-11ef-9fe8-9113c2c8d024"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9109d708-5d4c-49ee-b4d5-b1c3d4c87733"},"level":"info","message":"Successfully running experiment","requestID":"c35298650426ca2c2f4a7bc2543a9ec7"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":307,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:01Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":307,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.66282,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:01Z"} authorization-1 | {"client_addr":"127.0.0.1:46174","level":"info","msg":"Received request.","req_id":308,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e21002d6-317a-448c-8953-08c0b3a6c2d5","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4c8198e0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/e21002d6-317a-448c-8953-08c0b3a6c2d5","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837881,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4MX0.w5OPk5imnCLp-BTvJfFvPExKXLvUlA7pf0tzP9YqkDk"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4c8198e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46174","level":"info","msg":"Sent response.","req_id":308,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.913614,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51392","level":"info","msg":"Received request.","req_id":309,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4c81e700-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837881,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4MX0.w5OPk5imnCLp-BTvJfFvPExKXLvUlA7pf0tzP9YqkDk"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"4c81e700-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51392","level":"info","msg":"Sent response.","req_id":309,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.331848,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:01Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21002d6-317a-448c-8953-08c0b3a6c2d5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"87d455f2-16cf-436a-bc66-d41a07c13b4d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837881.7196405} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e21002d6-317a-448c-8953-08c0b3a6c2d5","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4c820e10-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e21002d6-317a-448c-8953-08c0b3a6c2d5","object_type":"device","rebac_allow":false,"scope_allow":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":"4c820e10-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21002d6-317a-448c-8953-08c0b3a6c2d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21002d6-317a-448c-8953-08c0b3a6c2d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:00.962303849Z"}]},"request_id":"ae7348da-a8fa-4ff2-ad51-5b52d285d53b","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837881.7238436} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4c8198e0-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2238ee33-0f73-4ba0-8ed6-73f083dd8595","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2238ee33-0f73-4ba0-8ed6-73f083dd8595","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:01.011973421Z"}]},"request_id":"edaea470-64e0-4f11-99ba-10e10d6ab7df","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837881.7265432} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"4c81e700-49d8-11ef-9fe8-9113c2c8d024","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4c820e10-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/e21002d6-317a-448c-8953-08c0b3a6c2d5/signaling 200 16ms","method":"POST","requestID":"4c820e10-49d8-11ef-9fe8-9113c2c8d024","responseTime":16,"status":200,"url":"/devices/e21002d6-317a-448c-8953-08c0b3a6c2d5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4c851b50-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4c8198e0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/e21002d6-317a-448c-8953-08c0b3a6c2d5? 200 25ms","method":"GET","requestID":"4c8198e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":25,"status":200,"url":"/devices/e21002d6-317a-448c-8953-08c0b3a6c2d5?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4c81e700-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595? 200 24ms","method":"GET","requestID":"4c81e700-49d8-11ef-9fe8-9113c2c8d024","responseTime":24,"status":200,"url":"/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595?"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":310,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:01Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2238ee33-0f73-4ba0-8ed6-73f083dd8595","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6cb75c22-da7c-4914-a338-8203592a50b3","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837881.7384267} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":310,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.471825,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:01Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4c8605b0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9109d708-5d4c-49ee-b4d5-b1c3d4c87733#owner@http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9109d708-5d4c-49ee-b4d5-b1c3d4c87733","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"92b4c112-b328-4453-b3bf-8e2907a96a91","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837881.7391975} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4c851b50-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4c851b50-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bab67022-e1a7-4966-8e72-03d3c273f1ed","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837881.7395406} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"c35298650426ca2c2f4a7bc2543a9ec7","responseTime":23,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4c851b50-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595/signaling 200 10ms","method":"POST","requestID":"4c851b50-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595/signaling"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":311,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:01Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21002d6-317a-448c-8953-08c0b3a6c2d5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"534c7fc6-79fe-478d-91f8-e8a9e89744a4","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837881.747168} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":311,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.988355,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e21002d6-317a-448c-8953-08c0b3a6c2d5","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4c8605b0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e21002d6-317a-448c-8953-08c0b3a6c2d5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4c8605b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/9109d708-5d4c-49ee-b4d5-b1c3d4c87733","user":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"c35298650426ca2c2f4a7bc2543a9ec7"} gateway-1 | {"time_local":"24/Jul/2024:16:18:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"785","request_time":"0.145","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c35298650426ca2c2f4a7bc2543a9ec7"} experiment-1 | {"level":"info","message":"POST /experiments? 201 140ms","method":"POST","requestID":"c35298650426ca2c2f4a7bc2543a9ec7","responseTime":140,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4c8605b0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/e21002d6-317a-448c-8953-08c0b3a6c2d5/signaling 200 12ms","method":"POST","requestID":"4c8605b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":12,"status":200,"url":"/devices/e21002d6-317a-448c-8953-08c0b3a6c2d5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4c882890-49d8-11ef-9fe8-9113c2c8d024"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4MX0.w5OPk5imnCLp-BTvJfFvPExKXLvUlA7pf0tzP9YqkDk","level":"info","message":"auth send jwt","requestID":"26dd92c80666dad411aefac21f9de9cd"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"26dd92c80666dad411aefac21f9de9cd","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"26dd92c80666dad411aefac21f9de9cd"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":312,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:01Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2238ee33-0f73-4ba0-8ed6-73f083dd8595","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ef5c3d83-1207-4f34-ab26-b1db1317bcbd","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837881.7584589} authorization-1 | {"client_addr":"127.0.0.1:46174","level":"info","msg":"Received request.","req_id":313,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:01Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":312,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.640501,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4c882890-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4c882890-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46174","level":"info","msg":"Sent response.","req_id":313,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.894912,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e21002d6-317a-448c-8953-08c0b3a6c2d5","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"26dd92c80666dad411aefac21f9de9cd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/e21002d6-317a-448c-8953-08c0b3a6c2d5","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837881,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4MX0.w5OPk5imnCLp-BTvJfFvPExKXLvUlA7pf0tzP9YqkDk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"26dd92c80666dad411aefac21f9de9cd","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4c882890-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595/signaling 200 12ms","method":"POST","requestID":"4c882890-49d8-11ef-9fe8-9113c2c8d024","responseTime":12,"status":200,"url":"/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595/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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21002d6-317a-448c-8953-08c0b3a6c2d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21002d6-317a-448c-8953-08c0b3a6c2d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:00.962303849Z"}]},"request_id":"b277a1e6-b9e6-48e3-9a21-0027714bb8c7","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837881.7654836} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9109d708-5d4c-49ee-b4d5-b1c3d4c87733"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"c35298650426ca2c2f4a7bc2543a9ec7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9109d708-5d4c-49ee-b4d5-b1c3d4c87733"},"level":"info","message":"Building connection plan","requestID":"c35298650426ca2c2f4a7bc2543a9ec7"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"798375f4-207d-42fd-9824-e7f1a66a6b44"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"ad7bc4b2-0717-4eee-a643-30e1dc1f8d15"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/file","uuid":"4e632eaa-25de-4a20-91cf-3cf22ddce9e2"}]},"level":"info","message":"Built pairwise service configurations","requestID":"c35298650426ca2c2f4a7bc2543a9ec7"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/e21002d6-317a-448c-8953-08c0b3a6c2d5"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"c35298650426ca2c2f4a7bc2543a9ec7"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"26dd92c80666dad411aefac21f9de9cd","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"4c8a9990-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"26dd92c80666dad411aefac21f9de9cd"} gateway-1 | {"time_local":"24/Jul/2024:16:18:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e21002d6-317a-448c-8953-08c0b3a6c2d5? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"26dd92c80666dad411aefac21f9de9cd"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":314,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:01Z"} device-1 | {"level":"info","message":"GET /devices/e21002d6-317a-448c-8953-08c0b3a6c2d5? 200 16ms","method":"GET","requestID":"26dd92c80666dad411aefac21f9de9cd","responseTime":16,"status":200,"url":"/devices/e21002d6-317a-448c-8953-08c0b3a6c2d5?"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":314,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.089002,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:01Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4c8a9990-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837881,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4MX0.w5OPk5imnCLp-BTvJfFvPExKXLvUlA7pf0tzP9YqkDk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4c8a9990-49d8-11ef-9fe8-9113c2c8d024","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4MX0.w5OPk5imnCLp-BTvJfFvPExKXLvUlA7pf0tzP9YqkDk","level":"info","message":"auth send jwt","requestID":"f7a7999283dd2b0719d731b0eb130acc"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f7a7999283dd2b0719d731b0eb130acc","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f7a7999283dd2b0719d731b0eb130acc"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":315,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:01Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":315,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.636238,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"f7a7999283dd2b0719d731b0eb130acc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837881,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4MX0.w5OPk5imnCLp-BTvJfFvPExKXLvUlA7pf0tzP9YqkDk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f7a7999283dd2b0719d731b0eb130acc","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","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%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"92889399-9967-48e7-a37e-68ebd11e5102","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837881.7848315} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8185eddf-b590-4dec-9ad7-7d00d392e06e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837881.7849762} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2238ee33-0f73-4ba0-8ed6-73f083dd8595","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2238ee33-0f73-4ba0-8ed6-73f083dd8595","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:01.011973421Z"}]},"request_id":"ab14a3fe-0304-4290-96dd-37a8f6dd9e36","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837881.7858615} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"4c8a9990-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f7a7999283dd2b0719d731b0eb130acc","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f7a7999283dd2b0719d731b0eb130acc"} gateway-1 | {"time_local":"24/Jul/2024:16:18:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f7a7999283dd2b0719d731b0eb130acc"} device-1 | {"level":"info","message":"GET /devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595? 200 14ms","method":"GET","requestID":"f7a7999283dd2b0719d731b0eb130acc","responseTime":14,"status":200,"url":"/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"4c8a9990-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"4c8a9990-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/1739e85f-51f9-458d-bb2f-b6e4b0021038'","requestID":"4c8a9990-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/1739e85f-51f9-458d-bb2f-b6e4b0021038'","requestID":"4c8a9990-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"4c8a9990-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 30ms","method":"POST","requestID":"4c8a9990-49d8-11ef-9fe8-9113c2c8d024","responseTime":30,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"4c8a9990-49d8-11ef-9fe8-9113c2c8d024"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9109d708-5d4c-49ee-b4d5-b1c3d4c87733"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"c35298650426ca2c2f4a7bc2543a9ec7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4c939a40-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":316,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:01Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21002d6-317a-448c-8953-08c0b3a6c2d5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9da18c73-6391-4df1-89d8-b86aafdde977","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837881.8331418} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":316,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.330728,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e21002d6-317a-448c-8953-08c0b3a6c2d5","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4c939a40-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e21002d6-317a-448c-8953-08c0b3a6c2d5","object_type":"device","rebac_allow":false,"scope_allow":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":"4c939a40-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4c939a40-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/e21002d6-317a-448c-8953-08c0b3a6c2d5/signaling 200 9ms","method":"POST","requestID":"4c939a40-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/devices/e21002d6-317a-448c-8953-08c0b3a6c2d5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4c9547f0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":317,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:01Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2238ee33-0f73-4ba0-8ed6-73f083dd8595","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"34676a28-f8b7-4459-b213-a7ee63e7dab6","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837881.843852} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":317,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.026958,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4c9547f0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4c9547f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4c9547f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595/signaling 200 10ms","method":"POST","requestID":"4c9547f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595/signaling"} device-1 | {"device":"2238ee33-0f73-4ba0-8ed6-73f083dd8595","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"1739e85f-51f9-458d-bb2f-b6e4b0021038","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"e21002d6-317a-448c-8953-08c0b3a6c2d5","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"1739e85f-51f9-458d-bb2f-b6e4b0021038","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"e21002d6-317a-448c-8953-08c0b3a6c2d5","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"e21002d6-317a-448c-8953-08c0b3a6c2d5","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"e21002d6-317a-448c-8953-08c0b3a6c2d5","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"e21002d6-317a-448c-8953-08c0b3a6c2d5","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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/1739e85f-51f9-458d-bb2f-b6e4b0021038' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1739e85f-51f9-458d-bb2f-b6e4b0021038","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0da2b2bf1bce44aff4895f398b1fe02f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"0da2b2bf1bce44aff4895f398b1fe02f","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/e21002d6-317a-448c-8953-08c0b3a6c2d5"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/1739e85f-51f9-458d-bb2f-b6e4b0021038"}}},"level":"info","message":"received a callback","requestID":"0da2b2bf1bce44aff4895f398b1fe02f"} device-1 | {"device":"2238ee33-0f73-4ba0-8ed6-73f083dd8595","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"0da2b2bf1bce44aff4895f398b1fe02f","responseTime":7,"status":200,"url":"/callbacks/experiment"} device-1 | {"device":"2238ee33-0f73-4ba0-8ed6-73f083dd8595","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"2238ee33-0f73-4ba0-8ed6-73f083dd8595","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.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":"24/Jul/2024:16:18: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.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"0da2b2bf1bce44aff4895f398b1fe02f"} device-1 | {"data":{"peerconnection":"1739e85f-51f9-458d-bb2f-b6e4b0021038","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"e21002d6-317a-448c-8953-08c0b3a6c2d5","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"2238ee33-0f73-4ba0-8ed6-73f083dd8595","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"2238ee33-0f73-4ba0-8ed6-73f083dd8595","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"e21002d6-317a-448c-8953-08c0b3a6c2d5","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"1739e85f-51f9-458d-bb2f-b6e4b0021038","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/1739e85f-51f9-458d-bb2f-b6e4b0021038' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1739e85f-51f9-458d-bb2f-b6e4b0021038","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1e63f15f9493ce7efd175e35a281c25a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"1e63f15f9493ce7efd175e35a281c25a","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/e21002d6-317a-448c-8953-08c0b3a6c2d5"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/1739e85f-51f9-458d-bb2f-b6e4b0021038"}}},"level":"info","message":"received a callback","requestID":"1e63f15f9493ce7efd175e35a281c25a"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"4dd34630-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":318,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:03Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1739e85f-51f9-458d-bb2f-b6e4b0021038","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e9432a0a-41e9-4098-a0df-88b8e095f7a2","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837883.9280987} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":318,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.937136,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/1739e85f-51f9-458d-bb2f-b6e4b0021038","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4dd34630-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/1739e85f-51f9-458d-bb2f-b6e4b0021038","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":"4dd34630-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"4dd34630-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /peerconnections/1739e85f-51f9-458d-bb2f-b6e4b0021038 200 9ms","method":"GET","requestID":"4dd34630-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/peerconnections/1739e85f-51f9-458d-bb2f-b6e4b0021038"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 35ms","method":"POST","requestID":"1e63f15f9493ce7efd175e35a281c25a","responseTime":35,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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":"1e63f15f9493ce7efd175e35a281c25a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4dd7b300-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":319,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:03Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21002d6-317a-448c-8953-08c0b3a6c2d5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"46e37bed-8ad4-4bd0-ada1-2f519721dfd4","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837883.9576948} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":319,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.627451,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e21002d6-317a-448c-8953-08c0b3a6c2d5","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4dd7b300-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e21002d6-317a-448c-8953-08c0b3a6c2d5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4dd7b300-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4dd7b300-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/e21002d6-317a-448c-8953-08c0b3a6c2d5/signaling 200 10ms","method":"POST","requestID":"4dd7b300-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/devices/e21002d6-317a-448c-8953-08c0b3a6c2d5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4dd987c0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":320,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:03Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2238ee33-0f73-4ba0-8ed6-73f083dd8595","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1c19393f-32ec-4e17-a5eb-370d507febb2","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837883.9701} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":320,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.095834,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4dd987c0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4dd987c0-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4dd987c0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595/signaling 200 10ms","method":"POST","requestID":"4dd987c0-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4NH0.a1XIWhASPcdrEFCH9ri8Lbx0na_CeYB449F5D_iWOc8","level":"info","message":"auth send jwt","requestID":"e109a2899465703cefe5c48f535ba82f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e109a2899465703cefe5c48f535ba82f","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/9109d708-5d4c-49ee-b4d5-b1c3d4c87733","requestID":"e109a2899465703cefe5c48f535ba82f"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":321,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:04Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":321,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.160754,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/9109d708-5d4c-49ee-b4d5-b1c3d4c87733","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"e109a2899465703cefe5c48f535ba82f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/9109d708-5d4c-49ee-b4d5-b1c3d4c87733","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837884,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4NH0.a1XIWhASPcdrEFCH9ri8Lbx0na_CeYB449F5D_iWOc8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e109a2899465703cefe5c48f535ba82f","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/9109d708-5d4c-49ee-b4d5-b1c3d4c87733","requestID":"e109a2899465703cefe5c48f535ba82f"} experiment-1 | {"level":"info","message":"GET /experiments/9109d708-5d4c-49ee-b4d5-b1c3d4c87733 200 17ms","method":"GET","requestID":"e109a2899465703cefe5c48f535ba82f","responseTime":17,"status":200,"url":"/experiments/9109d708-5d4c-49ee-b4d5-b1c3d4c87733"} gateway-1 | {"time_local":"24/Jul/2024:16:18:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/9109d708-5d4c-49ee-b4d5-b1c3d4c87733 HTTP/1.1","status": "200","body_bytes_sent":"858","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e109a2899465703cefe5c48f535ba82f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4NH0.a1XIWhASPcdrEFCH9ri8Lbx0na_CeYB449F5D_iWOc8","level":"info","message":"auth send jwt","requestID":"f8c1b579f85580580ef9372bb665cb62"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f8c1b579f85580580ef9372bb665cb62","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/9109d708-5d4c-49ee-b4d5-b1c3d4c87733","requestID":"f8c1b579f85580580ef9372bb665cb62"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":322,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:04Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":322,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.285227,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:04Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/9109d708-5d4c-49ee-b4d5-b1c3d4c87733","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"f8c1b579f85580580ef9372bb665cb62","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/9109d708-5d4c-49ee-b4d5-b1c3d4c87733","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837884,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4NH0.a1XIWhASPcdrEFCH9ri8Lbx0na_CeYB449F5D_iWOc8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f8c1b579f85580580ef9372bb665cb62","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9109d708-5d4c-49ee-b4d5-b1c3d4c87733"},"level":"info","message":"Attempting to finish experiment","requestID":"f8c1b579f85580580ef9372bb665cb62"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"4df7be20-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":323,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:04Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":323,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.352593,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:04Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/1739e85f-51f9-458d-bb2f-b6e4b0021038","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4df7be20-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:http://localhost/peerconnections/1739e85f-51f9-458d-bb2f-b6e4b0021038","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837884,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4NH0.a1XIWhASPcdrEFCH9ri8Lbx0na_CeYB449F5D_iWOc8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4df7be20-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"e21002d6-317a-448c-8953-08c0b3a6c2d5","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"e21002d6-317a-448c-8953-08c0b3a6c2d5","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"e21002d6-317a-448c-8953-08c0b3a6c2d5","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"2238ee33-0f73-4ba0-8ed6-73f083dd8595","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"2238ee33-0f73-4ba0-8ed6-73f083dd8595","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"2238ee33-0f73-4ba0-8ed6-73f083dd8595","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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/1739e85f-51f9-458d-bb2f-b6e4b0021038' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/1739e85f-51f9-458d-bb2f-b6e4b0021038' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1739e85f-51f9-458d-bb2f-b6e4b0021038","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"70fdb93d53b99dee09e08889b2e7a735","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"70fdb93d53b99dee09e08889b2e7a735","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1739e85f-51f9-458d-bb2f-b6e4b0021038': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1739e85f-51f9-458d-bb2f-b6e4b0021038","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"e47b9c94-83c6-446a-aac7-c24bd1b05b48","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837884.188269} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a4a2066f-fac8-4ff6-9397-ebedc1a26167","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837884.18863} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"700719b7ba465a7e112c8c1c913672c1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/e21002d6-317a-448c-8953-08c0b3a6c2d5"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/1739e85f-51f9-458d-bb2f-b6e4b0021038"}}},"level":"info","message":"received a callback","requestID":"70fdb93d53b99dee09e08889b2e7a735"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"700719b7ba465a7e112c8c1c913672c1","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"4df7be20-49d8-11ef-9fe8-9113c2c8d024","responseTime":11,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/e21002d6-317a-448c-8953-08c0b3a6c2d5"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/1739e85f-51f9-458d-bb2f-b6e4b0021038"}}},"level":"info","message":"received a callback","requestID":"700719b7ba465a7e112c8c1c913672c1"} device-1 | {"data":{"peerconnection":"1739e85f-51f9-458d-bb2f-b6e4b0021038","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"4df7be20-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"DELETE /peerconnections/1739e85f-51f9-458d-bb2f-b6e4b0021038 204 51ms","method":"DELETE","requestID":"4df7be20-49d8-11ef-9fe8-9113c2c8d024","responseTime":51,"status":204,"url":"/peerconnections/1739e85f-51f9-458d-bb2f-b6e4b0021038"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9109d708-5d4c-49ee-b4d5-b1c3d4c87733"},"level":"info","message":"Successfully finished experiment","requestID":"f8c1b579f85580580ef9372bb665cb62"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4e02baa0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":324,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:04Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21002d6-317a-448c-8953-08c0b3a6c2d5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6cadc04c-28e9-4570-99be-f9ee53c210d0","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837884.2416883} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":324,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.142926,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e21002d6-317a-448c-8953-08c0b3a6c2d5","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4e02baa0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e21002d6-317a-448c-8953-08c0b3a6c2d5","object_type":"device","rebac_allow":false,"scope_allow":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":"4e02baa0-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4e02baa0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/e21002d6-317a-448c-8953-08c0b3a6c2d5/signaling 200 15ms","method":"POST","requestID":"4e02baa0-49d8-11ef-9fe8-9113c2c8d024","responseTime":15,"status":200,"url":"/devices/e21002d6-317a-448c-8953-08c0b3a6c2d5/signaling"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9109d708-5d4c-49ee-b4d5-b1c3d4c87733': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9109d708-5d4c-49ee-b4d5-b1c3d4c87733","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"46e22061-8cee-48be-a19b-c43f9298df5c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837884.2495837} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2ba1b447-9943-4b72-a92c-a0f0a92c74d8","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837884.2499335} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"f8c1b579f85580580ef9372bb665cb62","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4e0579c0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":325,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:04Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2238ee33-0f73-4ba0-8ed6-73f083dd8595","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ddb1fc3f-eb41-43a0-869a-c14f442e0a74","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837884.259053} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":325,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.537601,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4e0579c0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4e0579c0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4e0579c0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595/signaling 200 13ms","method":"POST","requestID":"4e0579c0-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/9109d708-5d4c-49ee-b4d5-b1c3d4c87733","requestID":"f8c1b579f85580580ef9372bb665cb62"} gateway-1 | {"time_local":"24/Jul/2024:16:18:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/9109d708-5d4c-49ee-b4d5-b1c3d4c87733 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":"f8c1b579f85580580ef9372bb665cb62"} gateway-1 | {"time_local":"24/Jul/2024:16:18:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2490","request_time":"2.780","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"2cb5edb32d0cdc3c084ef97e4c79f021"} experiment-1 | {"level":"info","message":"DELETE /experiments/9109d708-5d4c-49ee-b4d5-b1c3d4c87733 204 184ms","method":"DELETE","requestID":"f8c1b579f85580580ef9372bb665cb62","responseTime":184,"status":204,"url":"/experiments/9109d708-5d4c-49ee-b4d5-b1c3d4c87733"} gateway-1 | {"time_local":"24/Jul/2024:16:18:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2490","request_time":"2.771","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"9c42b13875c34acfa45685b3798afca2"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 143ms","method":"POST","requestID":"70fdb93d53b99dee09e08889b2e7a735","responseTime":143,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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.148","http_referrer":"","http_user_agent":"node-fetch","requestID":"70fdb93d53b99dee09e08889b2e7a735"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 143ms","method":"POST","requestID":"700719b7ba465a7e112c8c1c913672c1","responseTime":143,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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.149","http_referrer":"","http_user_agent":"node-fetch","requestID":"700719b7ba465a7e112c8c1c913672c1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4NH0.a1XIWhASPcdrEFCH9ri8Lbx0na_CeYB449F5D_iWOc8","level":"info","message":"auth send jwt","requestID":"2b87d7880b4451e83699f346c56b8db0"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"2b87d7880b4451e83699f346c56b8db0","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"2b87d7880b4451e83699f346c56b8db0"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/2238ee33-0f73-4ba0-8ed6-73f083dd8595' closed"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":326,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:04Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":326,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.305221,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"2b87d7880b4451e83699f346c56b8db0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837884,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4NH0.a1XIWhASPcdrEFCH9ri8Lbx0na_CeYB449F5D_iWOc8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2b87d7880b4451e83699f346c56b8db0","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/e21002d6-317a-448c-8953-08c0b3a6c2d5' 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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9399d4bb-ec87-47e7-85d9-161f386af276","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837884.3623323} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2b87d7880b4451e83699f346c56b8db0","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2c97be8b-a690-45eb-a039-93c15adb6168","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837884.3699486} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"2b87d7880b4451e83699f346c56b8db0","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"090f1e1e-bb74-4de3-bc25-b5b6077ae98f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837884.380864} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"47ddb9d6-c826-4b2f-a857-209a86cc3369","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837884.3811293} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"2b87d7880b4451e83699f346c56b8db0","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:04.380842918Z"}]},"request_id":"50ea6b71-49ee-4322-bfd9-51b7087d4935","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837884.3872592} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2b87d7880b4451e83699f346c56b8db0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2b87d7880b4451e83699f346c56b8db0"} gateway-1 | {"time_local":"24/Jul/2024:16:18:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.058","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2b87d7880b4451e83699f346c56b8db0"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"2b87d7880b4451e83699f346c56b8db0","responseTime":50,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4NH0.a1XIWhASPcdrEFCH9ri8Lbx0na_CeYB449F5D_iWOc8","level":"info","message":"auth send jwt","requestID":"e3d97e3f67f08625a9a00063bb90cc14"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e3d97e3f67f08625a9a00063bb90cc14","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e3d97e3f67f08625a9a00063bb90cc14"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":327,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:04Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":327,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.883107,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"e3d97e3f67f08625a9a00063bb90cc14","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837884,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4NH0.a1XIWhASPcdrEFCH9ri8Lbx0na_CeYB449F5D_iWOc8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e3d97e3f67f08625a9a00063bb90cc14","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0720c78e-811e-41c4-ab93-c190eadba48b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"98f32984-aa2c-4ae5-8956-8e38da58d517","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837884.4208043} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e3d97e3f67f08625a9a00063bb90cc14","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1543a2b5-5937-4c37-957e-26a468ba23de","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837884.4266458} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e3d97e3f67f08625a9a00063bb90cc14","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0720c78e-811e-41c4-ab93-c190eadba48b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"66e09f08-7176-48ad-b031-40a750c97183","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837884.4383898} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"24d29531-62f8-4dfd-a70c-89ff40dabfe0","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837884.4384782} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"e3d97e3f67f08625a9a00063bb90cc14","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0720c78e-811e-41c4-ab93-c190eadba48b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0720c78e-811e-41c4-ab93-c190eadba48b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:04.438367636Z"}]},"request_id":"ad18692c-6018-4c8f-b4cd-02842067c48f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837884.443781} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e3d97e3f67f08625a9a00063bb90cc14","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e3d97e3f67f08625a9a00063bb90cc14"} gateway-1 | {"time_local":"24/Jul/2024:16:18:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.055","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e3d97e3f67f08625a9a00063bb90cc14"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"e3d97e3f67f08625a9a00063bb90cc14","responseTime":50,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c9e9994515c26169ad02d85252811e4d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c9e9994515c26169ad02d85252811e4d","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Jul/2024:16:18:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9/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":"c9e9994515c26169ad02d85252811e4d"} device-1 | {"level":"info","message":"OPTIONS /devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9/websocket 200 1ms","method":"OPTIONS","requestID":"c9e9994515c26169ad02d85252811e4d","responseTime":1,"status":200,"url":"/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4Nn0.A8yjXVfTmlNizVZc_rhjzvT-p36m4XXFhQqDL1m3XV0","level":"info","message":"auth send jwt","requestID":"a2162d1c9d776316e2049cf71de73232"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a2162d1c9d776316e2049cf71de73232","responseTime":4,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f2480bbeacd59edc2ce2ab211e30c845","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a2162d1c9d776316e2049cf71de73232"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f2480bbeacd59edc2ce2ab211e30c845","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Jul/2024:16:18:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/0720c78e-811e-41c4-ab93-c190eadba48b/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":"f2480bbeacd59edc2ce2ab211e30c845"} device-1 | {"level":"info","message":"OPTIONS /devices/0720c78e-811e-41c4-ab93-c190eadba48b/websocket 200 1ms","method":"OPTIONS","requestID":"f2480bbeacd59edc2ce2ab211e30c845","responseTime":1,"status":200,"url":"/devices/0720c78e-811e-41c4-ab93-c190eadba48b/websocket"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":328,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":328,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.900831,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"a2162d1c9d776316e2049cf71de73232","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837886,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4Nn0.A8yjXVfTmlNizVZc_rhjzvT-p36m4XXFhQqDL1m3XV0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a2162d1c9d776316e2049cf71de73232","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4Nn0.A8yjXVfTmlNizVZc_rhjzvT-p36m4XXFhQqDL1m3XV0","level":"info","message":"auth send jwt","requestID":"b6b855d81727d6b3aabaae9337500abf"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"b6b855d81727d6b3aabaae9337500abf","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"b6b855d81727d6b3aabaae9337500abf"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":329,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":329,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.273677,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0720c78e-811e-41c4-ab93-c190eadba48b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"b6b855d81727d6b3aabaae9337500abf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/0720c78e-811e-41c4-ab93-c190eadba48b","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837886,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4Nn0.A8yjXVfTmlNizVZc_rhjzvT-p36m4XXFhQqDL1m3XV0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b6b855d81727d6b3aabaae9337500abf","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a2162d1c9d776316e2049cf71de73232"} device-1 | {"level":"info","message":"POST /devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9/websocket 200 29ms","method":"POST","requestID":"a2162d1c9d776316e2049cf71de73232","responseTime":29,"status":200,"url":"/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9/websocket"} gateway-1 | {"time_local":"24/Jul/2024:16:18:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9/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":"a2162d1c9d776316e2049cf71de73232"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"b6b855d81727d6b3aabaae9337500abf"} gateway-1 | {"time_local":"24/Jul/2024:16:18:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/0720c78e-811e-41c4-ab93-c190eadba48b/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":"b6b855d81727d6b3aabaae9337500abf"} device-1 | {"level":"info","message":"POST /devices/0720c78e-811e-41c4-ab93-c190eadba48b/websocket 200 25ms","method":"POST","requestID":"b6b855d81727d6b3aabaae9337500abf","responseTime":25,"status":200,"url":"/devices/0720c78e-811e-41c4-ab93-c190eadba48b/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/0720c78e-811e-41c4-ab93-c190eadba48b' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4Nn0.A8yjXVfTmlNizVZc_rhjzvT-p36m4XXFhQqDL1m3XV0","level":"info","message":"auth send jwt","requestID":"4746c321a536ce18f33cb90f7e82b5bb"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"4746c321a536ce18f33cb90f7e82b5bb","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4746c321a536ce18f33cb90f7e82b5bb"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":330,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":330,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.070851,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4746c321a536ce18f33cb90f7e82b5bb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837886,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4Nn0.A8yjXVfTmlNizVZc_rhjzvT-p36m4XXFhQqDL1m3XV0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4746c321a536ce18f33cb90f7e82b5bb","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:04.380842918Z"}]},"request_id":"5dca6315-eaa6-4f38-8977-4fdcd6efc696","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837886.4891024} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"4746c321a536ce18f33cb90f7e82b5bb","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4746c321a536ce18f33cb90f7e82b5bb"} gateway-1 | {"time_local":"24/Jul/2024:16:18:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4746c321a536ce18f33cb90f7e82b5bb"} device-1 | {"level":"info","message":"GET /devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9? 200 19ms","method":"GET","requestID":"4746c321a536ce18f33cb90f7e82b5bb","responseTime":19,"status":200,"url":"/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4Nn0.A8yjXVfTmlNizVZc_rhjzvT-p36m4XXFhQqDL1m3XV0","level":"info","message":"auth send jwt","requestID":"a55224fe14c8d778c7c979d0f2a54cc5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a55224fe14c8d778c7c979d0f2a54cc5","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a55224fe14c8d778c7c979d0f2a54cc5"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":331,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":331,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.140515,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0720c78e-811e-41c4-ab93-c190eadba48b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"a55224fe14c8d778c7c979d0f2a54cc5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/0720c78e-811e-41c4-ab93-c190eadba48b","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837886,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4Nn0.A8yjXVfTmlNizVZc_rhjzvT-p36m4XXFhQqDL1m3XV0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a55224fe14c8d778c7c979d0f2a54cc5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0720c78e-811e-41c4-ab93-c190eadba48b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0720c78e-811e-41c4-ab93-c190eadba48b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:04.438367636Z"}]},"request_id":"7a0b6714-38f7-42f0-bd9a-7747ba8b5777","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837886.5147252} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a55224fe14c8d778c7c979d0f2a54cc5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a55224fe14c8d778c7c979d0f2a54cc5"} device-1 | {"level":"info","message":"GET /devices/0720c78e-811e-41c4-ab93-c190eadba48b? 200 17ms","method":"GET","requestID":"a55224fe14c8d778c7c979d0f2a54cc5","responseTime":17,"status":200,"url":"/devices/0720c78e-811e-41c4-ab93-c190eadba48b?"} gateway-1 | {"time_local":"24/Jul/2024:16:18:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0720c78e-811e-41c4-ab93-c190eadba48b? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a55224fe14c8d778c7c979d0f2a54cc5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4Nn0.A8yjXVfTmlNizVZc_rhjzvT-p36m4XXFhQqDL1m3XV0","level":"info","message":"auth send jwt","requestID":"346ca0016c0f9dd453091fe3002b7134"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"346ca0016c0f9dd453091fe3002b7134","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"346ca0016c0f9dd453091fe3002b7134"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":332,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":332,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.139503,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"346ca0016c0f9dd453091fe3002b7134","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837886,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4Nn0.A8yjXVfTmlNizVZc_rhjzvT-p36m4XXFhQqDL1m3XV0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"346ca0016c0f9dd453091fe3002b7134","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb2b2641-8a4f-478d-be13-9a8c4a2a9d37"},"level":"info","message":"Attempting to run experiment","requestID":"346ca0016c0f9dd453091fe3002b7134"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb2b2641-8a4f-478d-be13-9a8c4a2a9d37"},"level":"info","message":"Attempting to book experiment","requestID":"346ca0016c0f9dd453091fe3002b7134"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb2b2641-8a4f-478d-be13-9a8c4a2a9d37"},"level":"info","message":"Successfully booked experiment","requestID":"346ca0016c0f9dd453091fe3002b7134"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4f67eff0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4f683e10-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":333,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":333,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.326171,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4f67eff0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837886,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4Nn0.A8yjXVfTmlNizVZc_rhjzvT-p36m4XXFhQqDL1m3XV0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4f67eff0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:44272","level":"info","msg":"Received request.","req_id":334,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"client_addr":"127.0.0.1:44272","level":"info","msg":"Sent response.","req_id":334,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.401759,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0720c78e-811e-41c4-ab93-c190eadba48b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4f683e10-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/0720c78e-811e-41c4-ab93-c190eadba48b","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837886,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4Nn0.A8yjXVfTmlNizVZc_rhjzvT-p36m4XXFhQqDL1m3XV0"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"4f683e10-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:04.380842918Z"}]},"request_id":"d27d462b-0710-4645-ac91-42c9392b7fe7","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837886.587806} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"4f67eff0-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0720c78e-811e-41c4-ab93-c190eadba48b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0720c78e-811e-41c4-ab93-c190eadba48b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:04.438367636Z"}]},"request_id":"a0622bc9-0a4b-4d7b-bbdd-5f3114c9402a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837886.5936973} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4f67eff0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4f683e10-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9? 200 20ms","method":"GET","requestID":"4f67eff0-49d8-11ef-9fe8-9113c2c8d024","responseTime":20,"status":200,"url":"/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4f683e10-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/0720c78e-811e-41c4-ab93-c190eadba48b? 200 22ms","method":"GET","requestID":"4f683e10-49d8-11ef-9fe8-9113c2c8d024","responseTime":22,"status":200,"url":"/devices/0720c78e-811e-41c4-ab93-c190eadba48b?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb2b2641-8a4f-478d-be13-9a8c4a2a9d37"},"level":"info","message":"Setting up experiment","requestID":"346ca0016c0f9dd453091fe3002b7134"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb2b2641-8a4f-478d-be13-9a8c4a2a9d37"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"346ca0016c0f9dd453091fe3002b7134"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb2b2641-8a4f-478d-be13-9a8c4a2a9d37"},"level":"info","message":"Successfully locked booking for experiment","requestID":"346ca0016c0f9dd453091fe3002b7134"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb2b2641-8a4f-478d-be13-9a8c4a2a9d37"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"346ca0016c0f9dd453091fe3002b7134"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb2b2641-8a4f-478d-be13-9a8c4a2a9d37"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"346ca0016c0f9dd453091fe3002b7134"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb2b2641-8a4f-478d-be13-9a8c4a2a9d37"},"level":"info","message":"Attempting to update booking for experiment","requestID":"346ca0016c0f9dd453091fe3002b7134"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb2b2641-8a4f-478d-be13-9a8c4a2a9d37"},"level":"info","message":"Successfully updated booking for experiment","requestID":"346ca0016c0f9dd453091fe3002b7134"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb2b2641-8a4f-478d-be13-9a8c4a2a9d37"},"level":"info","message":"Successfully set up experiment","requestID":"346ca0016c0f9dd453091fe3002b7134"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4f733a90-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4f7388b0-49d8-11ef-9fe8-9113c2c8d024"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb2b2641-8a4f-478d-be13-9a8c4a2a9d37"},"level":"info","message":"Successfully running experiment","requestID":"346ca0016c0f9dd453091fe3002b7134"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4f73d6d0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":335,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":335,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.764412,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"client_addr":"127.0.0.1:44272","level":"info","msg":"Received request.","req_id":336,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4f733a90-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837886,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4Nn0.A8yjXVfTmlNizVZc_rhjzvT-p36m4XXFhQqDL1m3XV0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4f733a90-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:44272","level":"info","msg":"Sent response.","req_id":336,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.055557,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0720c78e-811e-41c4-ab93-c190eadba48b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4f7388b0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/0720c78e-811e-41c4-ab93-c190eadba48b","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837886,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4Nn0.A8yjXVfTmlNizVZc_rhjzvT-p36m4XXFhQqDL1m3XV0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4f7388b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":337,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4d1fcf77-3fe5-4f18-99da-b1449f9acb46","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837886.660876} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":337,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.24891,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4f73d6d0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","object_type":"device","rebac_allow":false,"scope_allow":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":"4f73d6d0-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0720c78e-811e-41c4-ab93-c190eadba48b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0720c78e-811e-41c4-ab93-c190eadba48b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:04.438367636Z"}]},"request_id":"0ce7f705-6fa4-41b9-88dd-b286093cc723","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837886.6640851} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"4f7388b0-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:04.380842918Z"}]},"request_id":"928eaf0c-fae9-483f-98ae-c77bfee37cde","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837886.6665635} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4f733a90-49d8-11ef-9fe8-9113c2c8d024","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4f73d6d0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9/signaling 200 16ms","method":"POST","requestID":"4f73d6d0-49d8-11ef-9fe8-9113c2c8d024","responseTime":16,"status":200,"url":"/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4f76bd00-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4f7388b0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/0720c78e-811e-41c4-ab93-c190eadba48b? 200 24ms","method":"GET","requestID":"4f7388b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":25,"status":200,"url":"/devices/0720c78e-811e-41c4-ab93-c190eadba48b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4f733a90-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9? 200 28ms","method":"GET","requestID":"4f733a90-49d8-11ef-9fe8-9113c2c8d024","responseTime":28,"status":200,"url":"/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9?"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcb2b2641-8a4f-478d-be13-9a8c4a2a9d37#owner@http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcb2b2641-8a4f-478d-be13-9a8c4a2a9d37","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"d41d0646-7a4c-4b1d-95ab-393126f55310","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837886.6765752} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9f31a718-1bff-4d7f-84c2-23e2096088fa","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837886.6768453} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4f77ce70-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"346ca0016c0f9dd453091fe3002b7134","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0720c78e-811e-41c4-ab93-c190eadba48b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"65edfbac-c381-4cd2-b9f9-9da314a1acf8","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837886.6796918} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":338,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":338,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.918502,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0720c78e-811e-41c4-ab93-c190eadba48b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4f76bd00-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0720c78e-811e-41c4-ab93-c190eadba48b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4f76bd00-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":339,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:06Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4f76bd00-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/0720c78e-811e-41c4-ab93-c190eadba48b/signaling 200 12ms","method":"POST","requestID":"4f76bd00-49d8-11ef-9fe8-9113c2c8d024","responseTime":12,"status":200,"url":"/devices/0720c78e-811e-41c4-ab93-c190eadba48b/signaling"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"258cf150-a984-4ffc-81fc-05cdd7ed4ce3","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837886.685681} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":339,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.576525,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4f77ce70-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4f77ce70-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/cb2b2641-8a4f-478d-be13-9a8c4a2a9d37","user":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"346ca0016c0f9dd453091fe3002b7134"} gateway-1 | {"time_local":"24/Jul/2024:16:18:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1287","request_time":"0.166","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"346ca0016c0f9dd453091fe3002b7134"} experiment-1 | {"level":"info","message":"POST /experiments? 201 160ms","method":"POST","requestID":"346ca0016c0f9dd453091fe3002b7134","responseTime":160,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4f77ce70-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9/signaling 200 11ms","method":"POST","requestID":"4f77ce70-49d8-11ef-9fe8-9113c2c8d024","responseTime":11,"status":200,"url":"/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4f79ca40-49d8-11ef-9fe8-9113c2c8d024"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4Nn0.A8yjXVfTmlNizVZc_rhjzvT-p36m4XXFhQqDL1m3XV0","level":"info","message":"auth send jwt","requestID":"43518d6a99472da6415108697dbc6137"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"43518d6a99472da6415108697dbc6137","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"43518d6a99472da6415108697dbc6137"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":340,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0720c78e-811e-41c4-ab93-c190eadba48b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"00207124-0393-4bd4-a91a-059199d4a5d0","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837886.6974769} authorization-1 | {"client_addr":"127.0.0.1:44272","level":"info","msg":"Received request.","req_id":341,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":340,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.915956,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0720c78e-811e-41c4-ab93-c190eadba48b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4f79ca40-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0720c78e-811e-41c4-ab93-c190eadba48b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4f79ca40-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:44272","level":"info","msg":"Sent response.","req_id":341,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.998803,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"43518d6a99472da6415108697dbc6137","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837886,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4Nn0.A8yjXVfTmlNizVZc_rhjzvT-p36m4XXFhQqDL1m3XV0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"43518d6a99472da6415108697dbc6137","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4f79ca40-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/0720c78e-811e-41c4-ab93-c190eadba48b/signaling 200 11ms","method":"POST","requestID":"4f79ca40-49d8-11ef-9fe8-9113c2c8d024","responseTime":11,"status":200,"url":"/devices/0720c78e-811e-41c4-ab93-c190eadba48b/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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:04.380842918Z"}]},"request_id":"232f4dd7-b8ce-4402-9900-701a91fbdd07","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837886.704171} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb2b2641-8a4f-478d-be13-9a8c4a2a9d37"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"346ca0016c0f9dd453091fe3002b7134"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb2b2641-8a4f-478d-be13-9a8c4a2a9d37"},"level":"info","message":"Building connection plan","requestID":"346ca0016c0f9dd453091fe3002b7134"} 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":"e0a6d7cc-810e-466a-b993-a9491904df29"},{"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":"0fce3c4e-c1b2-4dbe-b2c4-0603bf790290"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"95666458-c9c3-4dcb-bd91-e84c8193437f"}]},"level":"info","message":"Built pairwise service configurations","requestID":"346ca0016c0f9dd453091fe3002b7134"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"43518d6a99472da6415108697dbc6137","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"connectionPlan":[{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/0720c78e-811e-41c4-ab93-c190eadba48b"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"346ca0016c0f9dd453091fe3002b7134"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"4f7c1430-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"43518d6a99472da6415108697dbc6137"} gateway-1 | {"time_local":"24/Jul/2024:16:18:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"43518d6a99472da6415108697dbc6137"} device-1 | {"level":"info","message":"GET /devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9? 200 14ms","method":"GET","requestID":"43518d6a99472da6415108697dbc6137","responseTime":14,"status":200,"url":"/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9?"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":342,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":342,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.899922,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4f7c1430-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837886,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4Nn0.A8yjXVfTmlNizVZc_rhjzvT-p36m4XXFhQqDL1m3XV0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4f7c1430-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4Nn0.A8yjXVfTmlNizVZc_rhjzvT-p36m4XXFhQqDL1m3XV0","level":"info","message":"auth send jwt","requestID":"e57abb0fd5ad4441c8b69d69be7aa1d1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e57abb0fd5ad4441c8b69d69be7aa1d1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e57abb0fd5ad4441c8b69d69be7aa1d1"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":343,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":343,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.69247,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0720c78e-811e-41c4-ab93-c190eadba48b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"e57abb0fd5ad4441c8b69d69be7aa1d1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/0720c78e-811e-41c4-ab93-c190eadba48b","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837886,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4Nn0.A8yjXVfTmlNizVZc_rhjzvT-p36m4XXFhQqDL1m3XV0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e57abb0fd5ad4441c8b69d69be7aa1d1","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","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%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"dee0db24-ba62-4a58-acda-f53aeacec6e0","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837886.721193} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5d51d1a1-d9fb-487e-a315-95289e3d8538","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837886.7214146} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"4f7c1430-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0720c78e-811e-41c4-ab93-c190eadba48b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0720c78e-811e-41c4-ab93-c190eadba48b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:04.438367636Z"}]},"request_id":"bec580c4-f997-430a-bdd5-408f38422cfd","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837886.7262912} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e57abb0fd5ad4441c8b69d69be7aa1d1","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"4f7c1430-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"4f7c1430-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/a83e5fb9-d984-467e-b7dc-205698d4f7fd'","requestID":"4f7c1430-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/a83e5fb9-d984-467e-b7dc-205698d4f7fd'","requestID":"4f7c1430-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"4f7c1430-49d8-11ef-9fe8-9113c2c8d024"} 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":"4f7c1430-49d8-11ef-9fe8-9113c2c8d024","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":"getDevicesByDeviceId succeeded","requestID":"e57abb0fd5ad4441c8b69d69be7aa1d1"} gateway-1 | {"time_local":"24/Jul/2024:16:18:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0720c78e-811e-41c4-ab93-c190eadba48b? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e57abb0fd5ad4441c8b69d69be7aa1d1"} device-1 | {"level":"info","message":"GET /devices/0720c78e-811e-41c4-ab93-c190eadba48b? 200 21ms","method":"GET","requestID":"e57abb0fd5ad4441c8b69d69be7aa1d1","responseTime":21,"status":200,"url":"/devices/0720c78e-811e-41c4-ab93-c190eadba48b?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"4f7c1430-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/a83e5fb9-d984-467e-b7dc-205698d4f7fd","device":"0720c78e-811e-41c4-ab93-c190eadba48b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/a83e5fb9-d984-467e-b7dc-205698d4f7fd","device":"6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb2b2641-8a4f-478d-be13-9a8c4a2a9d37"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"346ca0016c0f9dd453091fe3002b7134"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4f8478a0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":344,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1026005f-53d7-47fd-9865-305972252017","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837886.766419} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":344,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.391126,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4f8478a0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4f8478a0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4f8478a0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9/signaling 200 8ms","method":"POST","requestID":"4f8478a0-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4f85ff40-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"device":"0720c78e-811e-41c4-ab93-c190eadba48b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"0720c78e-811e-41c4-ab93-c190eadba48b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":345,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0720c78e-811e-41c4-ab93-c190eadba48b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"016703db-de92-465b-b6cb-c89ee55bc872","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837886.777809} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":345,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.777609,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0720c78e-811e-41c4-ab93-c190eadba48b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4f85ff40-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0720c78e-811e-41c4-ab93-c190eadba48b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4f85ff40-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4f85ff40-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/0720c78e-811e-41c4-ab93-c190eadba48b/signaling 200 9ms","method":"POST","requestID":"4f85ff40-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/devices/0720c78e-811e-41c4-ab93-c190eadba48b/signaling"} device-1 | {"device":"6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 877425878839371270 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:SF5D\r\na=ice-pwd:zqurrtFg8gxJ5jBRsdR/z2A/\r\na=ice-options:trickle\r\na=fingerprint:sha-256 39:F9:BB:23:FE:AE:EE:93:17:0D:06:33:B5:A5:F1:12:39:08:FF:EC:0C:2C:B1:63:E2:4C:B5:8C:65:BA:6A:82\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"0720c78e-811e-41c4-ab93-c190eadba48b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 2812635613412908494 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:NQoa\r\na=ice-pwd:ewDKaZJqKqjP8n/wZhrmrZVh\r\na=ice-options:trickle\r\na=fingerprint:sha-256 BD:36:EA:2F:B4:90:9D:2D:44:D7:31:DD:12:7C:78:F9:82:16:90:7B:99:1B:0E:D2:E0:52:DB:15:18:7F:A1:C7\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:203897526 1 udp 2113937151 46cb0595-08bb-432c-b2a9-4865e2d90fe4.local 40751 typ host generation 0 ufrag NQoa network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2282377417 1 udp 1677729535 141.24.211.56 40751 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag NQoa network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","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/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9'"} device-1 | {"content":{"candidate":"candidate:2743042959 1 udp 2113937151 263002a2-68d8-45b3-819f-c38dbb063843.local 49079 typ host generation 0 ufrag SF5D network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"0720c78e-811e-41c4-ab93-c190eadba48b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:659745264 1 udp 1677729535 141.24.211.56 49079 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag SF5D network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"0720c78e-811e-41c4-ab93-c190eadba48b","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/0720c78e-811e-41c4-ab93-c190eadba48b'"} device-1 | {"device":"0720c78e-811e-41c4-ab93-c190eadba48b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","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/a83e5fb9-d984-467e-b7dc-205698d4f7fd' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a83e5fb9-d984-467e-b7dc-205698d4f7fd","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"0720c78e-811e-41c4-ab93-c190eadba48b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"136e6097e94323608c01f8ec76a11c31","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"136e6097e94323608c01f8ec76a11c31","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/0720c78e-811e-41c4-ab93-c190eadba48b"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/a83e5fb9-d984-467e-b7dc-205698d4f7fd"}}},"level":"info","message":"received a callback","requestID":"136e6097e94323608c01f8ec76a11c31"} device-1 | {"device":"0720c78e-811e-41c4-ab93-c190eadba48b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","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":"136e6097e94323608c01f8ec76a11c31","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"136e6097e94323608c01f8ec76a11c31"} device-1 | {"device":"6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"a83e5fb9-d984-467e-b7dc-205698d4f7fd","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"a83e5fb9-d984-467e-b7dc-205698d4f7fd","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/a83e5fb9-d984-467e-b7dc-205698d4f7fd' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a83e5fb9-d984-467e-b7dc-205698d4f7fd","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8f45bd6216f086321efe0bc8d74f7d44","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8f45bd6216f086321efe0bc8d74f7d44","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/0720c78e-811e-41c4-ab93-c190eadba48b"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/a83e5fb9-d984-467e-b7dc-205698d4f7fd"}}},"level":"info","message":"received a callback","requestID":"8f45bd6216f086321efe0bc8d74f7d44"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"4f940900-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":346,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa83e5fb9-d984-467e-b7dc-205698d4f7fd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"29f7746a-6b52-414d-ae78-efb5559f58bc","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837886.8682435} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":346,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.064788,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a83e5fb9-d984-467e-b7dc-205698d4f7fd","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4f940900-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/a83e5fb9-d984-467e-b7dc-205698d4f7fd","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":"4f940900-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"4f940900-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /peerconnections/a83e5fb9-d984-467e-b7dc-205698d4f7fd 200 7ms","method":"GET","requestID":"4f940900-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/peerconnections/a83e5fb9-d984-467e-b7dc-205698d4f7fd"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 31ms","method":"POST","requestID":"8f45bd6216f086321efe0bc8d74f7d44","responseTime":31,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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.034","http_referrer":"","http_user_agent":"node-fetch","requestID":"8f45bd6216f086321efe0bc8d74f7d44"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4f9827b0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":347,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f93b6424-c20e-4f99-a959-c8142f6bea9c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837886.895853} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":347,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.192225,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4f9827b0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","object_type":"device","rebac_allow":false,"scope_allow":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":"4f9827b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4f9827b0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9/signaling 200 8ms","method":"POST","requestID":"4f9827b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4f99ae50-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":348,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0720c78e-811e-41c4-ab93-c190eadba48b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"03bea1f7-8a79-4f85-9d63-7a1516fd61ab","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837886.9058425} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":348,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.149697,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0720c78e-811e-41c4-ab93-c190eadba48b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4f99ae50-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0720c78e-811e-41c4-ab93-c190eadba48b","object_type":"device","rebac_allow":false,"scope_allow":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":"4f99ae50-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4f99ae50-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/0720c78e-811e-41c4-ab93-c190eadba48b/signaling 200 8ms","method":"POST","requestID":"4f99ae50-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/devices/0720c78e-811e-41c4-ab93-c190eadba48b/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4Nn0.A8yjXVfTmlNizVZc_rhjzvT-p36m4XXFhQqDL1m3XV0","level":"info","message":"auth send jwt","requestID":"2a6816aea2404e3999820fff0462b00f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2a6816aea2404e3999820fff0462b00f","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/cb2b2641-8a4f-478d-be13-9a8c4a2a9d37","requestID":"2a6816aea2404e3999820fff0462b00f"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":349,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":349,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.300636,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/cb2b2641-8a4f-478d-be13-9a8c4a2a9d37","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"2a6816aea2404e3999820fff0462b00f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/cb2b2641-8a4f-478d-be13-9a8c4a2a9d37","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837886,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4Nn0.A8yjXVfTmlNizVZc_rhjzvT-p36m4XXFhQqDL1m3XV0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2a6816aea2404e3999820fff0462b00f","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/cb2b2641-8a4f-478d-be13-9a8c4a2a9d37","requestID":"2a6816aea2404e3999820fff0462b00f"} gateway-1 | {"time_local":"24/Jul/2024:16:18:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/cb2b2641-8a4f-478d-be13-9a8c4a2a9d37 HTTP/1.1","status": "200","body_bytes_sent":"1360","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2a6816aea2404e3999820fff0462b00f"} experiment-1 | {"level":"info","message":"GET /experiments/cb2b2641-8a4f-478d-be13-9a8c4a2a9d37 200 12ms","method":"GET","requestID":"2a6816aea2404e3999820fff0462b00f","responseTime":12,"status":200,"url":"/experiments/cb2b2641-8a4f-478d-be13-9a8c4a2a9d37"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4Nn0.A8yjXVfTmlNizVZc_rhjzvT-p36m4XXFhQqDL1m3XV0","level":"info","message":"auth send jwt","requestID":"d37af1e466c9446deea5cf66b5dbaca1"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d37af1e466c9446deea5cf66b5dbaca1","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/cb2b2641-8a4f-478d-be13-9a8c4a2a9d37","requestID":"d37af1e466c9446deea5cf66b5dbaca1"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":350,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":350,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.710771,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/cb2b2641-8a4f-478d-be13-9a8c4a2a9d37","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"d37af1e466c9446deea5cf66b5dbaca1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/cb2b2641-8a4f-478d-be13-9a8c4a2a9d37","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837886,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4Nn0.A8yjXVfTmlNizVZc_rhjzvT-p36m4XXFhQqDL1m3XV0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d37af1e466c9446deea5cf66b5dbaca1","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb2b2641-8a4f-478d-be13-9a8c4a2a9d37"},"level":"info","message":"Attempting to finish experiment","requestID":"d37af1e466c9446deea5cf66b5dbaca1"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"4fa63170-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":351,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":351,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.213293,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:06Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a83e5fb9-d984-467e-b7dc-205698d4f7fd","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4fa63170-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:http://localhost/peerconnections/a83e5fb9-d984-467e-b7dc-205698d4f7fd","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837886,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4Nn0.A8yjXVfTmlNizVZc_rhjzvT-p36m4XXFhQqDL1m3XV0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4fa63170-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/a83e5fb9-d984-467e-b7dc-205698d4f7fd","device":"6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/a83e5fb9-d984-467e-b7dc-205698d4f7fd","device":"0720c78e-811e-41c4-ab93-c190eadba48b","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/a83e5fb9-d984-467e-b7dc-205698d4f7fd' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/a83e5fb9-d984-467e-b7dc-205698d4f7fd' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a83e5fb9-d984-467e-b7dc-205698d4f7fd","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa83e5fb9-d984-467e-b7dc-205698d4f7fd': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa83e5fb9-d984-467e-b7dc-205698d4f7fd","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"38ace7e9-2d7b-4ad6-a5c6-3edd3195df2f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837886.9998512} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a122a45a-07d6-4a08-89be-3eeba5e86c36","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837887.000049} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"4fa63170-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ff0ae1ae98d6f173f50c08ce1403931b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ff0ae1ae98d6f173f50c08ce1403931b","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7e833ef790c891b3bdef8077bee1e85c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/0720c78e-811e-41c4-ab93-c190eadba48b"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/a83e5fb9-d984-467e-b7dc-205698d4f7fd"}}},"level":"info","message":"received a callback","requestID":"ff0ae1ae98d6f173f50c08ce1403931b"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"7e833ef790c891b3bdef8077bee1e85c","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/0720c78e-811e-41c4-ab93-c190eadba48b"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/a83e5fb9-d984-467e-b7dc-205698d4f7fd"}}},"level":"info","message":"received a callback","requestID":"7e833ef790c891b3bdef8077bee1e85c"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"4fa63170-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"DELETE /peerconnections/a83e5fb9-d984-467e-b7dc-205698d4f7fd 204 35ms","method":"DELETE","requestID":"4fa63170-49d8-11ef-9fe8-9113c2c8d024","responseTime":35,"status":204,"url":"/peerconnections/a83e5fb9-d984-467e-b7dc-205698d4f7fd"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb2b2641-8a4f-478d-be13-9a8c4a2a9d37"},"level":"info","message":"Successfully finished experiment","requestID":"d37af1e466c9446deea5cf66b5dbaca1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4faf0b10-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":352,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:07Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"82345af9-d801-4026-b8c1-b1973c9f3897","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837887.047789} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":352,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.971794,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:07Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4faf0b10-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4faf0b10-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4faf0b10-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9/signaling 200 13ms","method":"POST","requestID":"4faf0b10-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9/signaling"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcb2b2641-8a4f-478d-be13-9a8c4a2a9d37': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcb2b2641-8a4f-478d-be13-9a8c4a2a9d37","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"07151d55-d403-4778-84d6-ca3ff1d56358","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837887.0551124} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"423c6ef8-1331-4b03-b859-4ce41a2a4535","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837887.0552952} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4fb15500-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"d37af1e466c9446deea5cf66b5dbaca1","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":353,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:07Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0720c78e-811e-41c4-ab93-c190eadba48b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eb0c39bf-f445-412c-ab16-cd1043c82242","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837887.062197} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":353,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.962125,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:07Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0720c78e-811e-41c4-ab93-c190eadba48b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4fb15500-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0720c78e-811e-41c4-ab93-c190eadba48b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4fb15500-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4fb15500-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/0720c78e-811e-41c4-ab93-c190eadba48b/signaling 200 11ms","method":"POST","requestID":"4fb15500-49d8-11ef-9fe8-9113c2c8d024","responseTime":11,"status":200,"url":"/devices/0720c78e-811e-41c4-ab93-c190eadba48b/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/cb2b2641-8a4f-478d-be13-9a8c4a2a9d37","requestID":"d37af1e466c9446deea5cf66b5dbaca1"} gateway-1 | {"time_local":"24/Jul/2024:16:18:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/cb2b2641-8a4f-478d-be13-9a8c4a2a9d37 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":"d37af1e466c9446deea5cf66b5dbaca1"} experiment-1 | {"level":"info","message":"DELETE /experiments/cb2b2641-8a4f-478d-be13-9a8c4a2a9d37 204 155ms","method":"DELETE","requestID":"d37af1e466c9446deea5cf66b5dbaca1","responseTime":155,"status":204,"url":"/experiments/cb2b2641-8a4f-478d-be13-9a8c4a2a9d37"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 124ms","method":"POST","requestID":"ff0ae1ae98d6f173f50c08ce1403931b","responseTime":124,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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.127","http_referrer":"","http_user_agent":"node-fetch","requestID":"ff0ae1ae98d6f173f50c08ce1403931b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 124ms","method":"POST","requestID":"7e833ef790c891b3bdef8077bee1e85c","responseTime":124,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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.128","http_referrer":"","http_user_agent":"node-fetch","requestID":"7e833ef790c891b3bdef8077bee1e85c"} gateway-1 | {"time_local":"24/Jul/2024:16:18:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2886","request_time":"0.692","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"d7965dbcb3c4fe6b923809f3db7e201e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4N30.2JfaUttWejcO6Wd9yLoYSsWTPvv9BOAzeZLOtf6HfSo","level":"info","message":"auth send jwt","requestID":"104f0eb13cfd4a65986df3c53bcd3dea"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"104f0eb13cfd4a65986df3c53bcd3dea","responseTime":8,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"104f0eb13cfd4a65986df3c53bcd3dea"} gateway-1 | {"time_local":"24/Jul/2024:16:18:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2885","request_time":"0.682","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"3d597b1343351454ad8485cb79cf875c"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":354,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:07Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":354,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.015663,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:07Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"104f0eb13cfd4a65986df3c53bcd3dea","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837887,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4N30.2JfaUttWejcO6Wd9yLoYSsWTPvv9BOAzeZLOtf6HfSo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"104f0eb13cfd4a65986df3c53bcd3dea","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/0720c78e-811e-41c4-ab93-c190eadba48b' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/6ee7fadb-fb00-4005-aa4d-61d1c55aa8c9' 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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49783f83-7f36-41a8-839c-c98d91601477","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"66a50802-cc1f-4fa4-9bad-5e23d480b2b3","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837887.1650555} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"104f0eb13cfd4a65986df3c53bcd3dea","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7825431c-19ab-44a7-bb7e-7c51afc5e738","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837887.1696806} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"104f0eb13cfd4a65986df3c53bcd3dea","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49783f83-7f36-41a8-839c-c98d91601477","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"76c5af1d-0cee-4781-a747-5b0b423199d0","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837887.180017} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4d59cc49-6ba5-4316-93f3-c8e162c45c19","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837887.1802218} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"104f0eb13cfd4a65986df3c53bcd3dea","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49783f83-7f36-41a8-839c-c98d91601477","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49783f83-7f36-41a8-839c-c98d91601477","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:07.179993904Z"}]},"request_id":"f31b6245-0d1b-446d-9a5f-3c9ff8cf210c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837887.183867} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"104f0eb13cfd4a65986df3c53bcd3dea","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"104f0eb13cfd4a65986df3c53bcd3dea"} gateway-1 | {"time_local":"24/Jul/2024:16:18:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.061","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"104f0eb13cfd4a65986df3c53bcd3dea"} device-1 | {"level":"info","message":"POST /devices? 201 51ms","method":"POST","requestID":"104f0eb13cfd4a65986df3c53bcd3dea","responseTime":51,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4N30.2JfaUttWejcO6Wd9yLoYSsWTPvv9BOAzeZLOtf6HfSo","level":"info","message":"auth send jwt","requestID":"89a5f6376831f009aae12ba3c39b1428"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"89a5f6376831f009aae12ba3c39b1428","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"89a5f6376831f009aae12ba3c39b1428"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":355,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:07Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":355,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.664008,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:07Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"89a5f6376831f009aae12ba3c39b1428","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837887,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4N30.2JfaUttWejcO6Wd9yLoYSsWTPvv9BOAzeZLOtf6HfSo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"89a5f6376831f009aae12ba3c39b1428","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62c21e07-819b-4594-9218-5844be80e852","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"cd32320e-267b-4aa4-bfa9-eea747433c25","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837887.206127} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"89a5f6376831f009aae12ba3c39b1428","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9d44bb7b-6a97-4c39-98bf-d6f1ef872107","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837887.210289} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"89a5f6376831f009aae12ba3c39b1428","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62c21e07-819b-4594-9218-5844be80e852","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"707ec333-db18-410a-ac76-d6cea8752670","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837887.2264738} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e9858c07-5cf5-4479-9b73-b77f76539db4","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837887.2267256} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"89a5f6376831f009aae12ba3c39b1428","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62c21e07-819b-4594-9218-5844be80e852","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62c21e07-819b-4594-9218-5844be80e852","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:07.226449824Z"}]},"request_id":"22da605c-9377-46fb-8e45-6e77b6a7ceca","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837887.231093} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"89a5f6376831f009aae12ba3c39b1428","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"89a5f6376831f009aae12ba3c39b1428"} gateway-1 | {"time_local":"24/Jul/2024:16:18:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"89a5f6376831f009aae12ba3c39b1428"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"89a5f6376831f009aae12ba3c39b1428","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bcdb48abe858683f63b5fa8e4fd27ccf","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"bcdb48abe858683f63b5fa8e4fd27ccf","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Jul/2024:16:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/62c21e07-819b-4594-9218-5844be80e852/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.002","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"bcdb48abe858683f63b5fa8e4fd27ccf"} device-1 | {"level":"info","message":"OPTIONS /devices/62c21e07-819b-4594-9218-5844be80e852/websocket 200 1ms","method":"OPTIONS","requestID":"bcdb48abe858683f63b5fa8e4fd27ccf","responseTime":1,"status":200,"url":"/devices/62c21e07-819b-4594-9218-5844be80e852/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fe89c625163c768637be2189f86975e3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"fe89c625163c768637be2189f86975e3","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Jul/2024:16:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/49783f83-7f36-41a8-839c-c98d91601477/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":"fe89c625163c768637be2189f86975e3"} device-1 | {"level":"info","message":"OPTIONS /devices/49783f83-7f36-41a8-839c-c98d91601477/websocket 200 1ms","method":"OPTIONS","requestID":"fe89c625163c768637be2189f86975e3","responseTime":1,"status":200,"url":"/devices/49783f83-7f36-41a8-839c-c98d91601477/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4OX0.EiJrIYbR1qQzYnSH_SP0fn_buT8qKOO6QhtNo36Ht1I","level":"info","message":"auth send jwt","requestID":"0c8dc8ca550e3f9e36a4b5f25f473113"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"0c8dc8ca550e3f9e36a4b5f25f473113","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0c8dc8ca550e3f9e36a4b5f25f473113"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4OX0.EiJrIYbR1qQzYnSH_SP0fn_buT8qKOO6QhtNo36Ht1I","level":"info","message":"auth send jwt","requestID":"8387dd95c4bd1d2e9703e4bfbe705a2c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8387dd95c4bd1d2e9703e4bfbe705a2c","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":356,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:09Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"8387dd95c4bd1d2e9703e4bfbe705a2c"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":356,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.594869,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/62c21e07-819b-4594-9218-5844be80e852","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"0c8dc8ca550e3f9e36a4b5f25f473113","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/62c21e07-819b-4594-9218-5844be80e852","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837889,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4OX0.EiJrIYbR1qQzYnSH_SP0fn_buT8qKOO6QhtNo36Ht1I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0c8dc8ca550e3f9e36a4b5f25f473113","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":357,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":357,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.646995,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/49783f83-7f36-41a8-839c-c98d91601477","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"8387dd95c4bd1d2e9703e4bfbe705a2c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/49783f83-7f36-41a8-839c-c98d91601477","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837889,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4OX0.EiJrIYbR1qQzYnSH_SP0fn_buT8qKOO6QhtNo36Ht1I"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8387dd95c4bd1d2e9703e4bfbe705a2c","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0c8dc8ca550e3f9e36a4b5f25f473113"} device-1 | {"level":"info","message":"POST /devices/62c21e07-819b-4594-9218-5844be80e852/websocket 200 22ms","method":"POST","requestID":"0c8dc8ca550e3f9e36a4b5f25f473113","responseTime":22,"status":200,"url":"/devices/62c21e07-819b-4594-9218-5844be80e852/websocket"} gateway-1 | {"time_local":"24/Jul/2024:16:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/62c21e07-819b-4594-9218-5844be80e852/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":"0c8dc8ca550e3f9e36a4b5f25f473113"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"8387dd95c4bd1d2e9703e4bfbe705a2c"} device-1 | {"level":"info","message":"POST /devices/49783f83-7f36-41a8-839c-c98d91601477/websocket 200 30ms","method":"POST","requestID":"8387dd95c4bd1d2e9703e4bfbe705a2c","responseTime":30,"status":200,"url":"/devices/49783f83-7f36-41a8-839c-c98d91601477/websocket"} gateway-1 | {"time_local":"24/Jul/2024:16:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/49783f83-7f36-41a8-839c-c98d91601477/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":"8387dd95c4bd1d2e9703e4bfbe705a2c"} device-1 | {"level":"info","message":"device 'http://localhost/devices/62c21e07-819b-4594-9218-5844be80e852' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/49783f83-7f36-41a8-839c-c98d91601477' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4OX0.EiJrIYbR1qQzYnSH_SP0fn_buT8qKOO6QhtNo36Ht1I","level":"info","message":"auth send jwt","requestID":"67ec7c4fe39889987df12df84db915eb"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"67ec7c4fe39889987df12df84db915eb","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"67ec7c4fe39889987df12df84db915eb"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":358,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":358,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.65222,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/49783f83-7f36-41a8-839c-c98d91601477","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"67ec7c4fe39889987df12df84db915eb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/49783f83-7f36-41a8-839c-c98d91601477","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837889,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4OX0.EiJrIYbR1qQzYnSH_SP0fn_buT8qKOO6QhtNo36Ht1I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"67ec7c4fe39889987df12df84db915eb","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49783f83-7f36-41a8-839c-c98d91601477","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49783f83-7f36-41a8-839c-c98d91601477","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:07.179993904Z"}]},"request_id":"013c4e3e-945e-4be7-8e36-50089d57fd34","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837889.253179} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"67ec7c4fe39889987df12df84db915eb","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"67ec7c4fe39889987df12df84db915eb"} device-1 | {"level":"info","message":"GET /devices/49783f83-7f36-41a8-839c-c98d91601477? 200 18ms","method":"GET","requestID":"67ec7c4fe39889987df12df84db915eb","responseTime":18,"status":200,"url":"/devices/49783f83-7f36-41a8-839c-c98d91601477?"} gateway-1 | {"time_local":"24/Jul/2024:16:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/49783f83-7f36-41a8-839c-c98d91601477? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"67ec7c4fe39889987df12df84db915eb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4OX0.EiJrIYbR1qQzYnSH_SP0fn_buT8qKOO6QhtNo36Ht1I","level":"info","message":"auth send jwt","requestID":"bd5f9bb6163846d5b8beb5006e71c718"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"bd5f9bb6163846d5b8beb5006e71c718","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bd5f9bb6163846d5b8beb5006e71c718"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":359,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":359,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.253178,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/62c21e07-819b-4594-9218-5844be80e852","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"bd5f9bb6163846d5b8beb5006e71c718","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/62c21e07-819b-4594-9218-5844be80e852","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837889,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4OX0.EiJrIYbR1qQzYnSH_SP0fn_buT8qKOO6QhtNo36Ht1I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bd5f9bb6163846d5b8beb5006e71c718","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62c21e07-819b-4594-9218-5844be80e852","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62c21e07-819b-4594-9218-5844be80e852","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:07.226449824Z"}]},"request_id":"5bf2bdf1-f6c2-4e87-9ca5-0aac35c5ad0f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837889.2781875} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"bd5f9bb6163846d5b8beb5006e71c718","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bd5f9bb6163846d5b8beb5006e71c718"} gateway-1 | {"time_local":"24/Jul/2024:16:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/62c21e07-819b-4594-9218-5844be80e852? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bd5f9bb6163846d5b8beb5006e71c718"} device-1 | {"level":"info","message":"GET /devices/62c21e07-819b-4594-9218-5844be80e852? 200 19ms","method":"GET","requestID":"bd5f9bb6163846d5b8beb5006e71c718","responseTime":19,"status":200,"url":"/devices/62c21e07-819b-4594-9218-5844be80e852?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4OX0.EiJrIYbR1qQzYnSH_SP0fn_buT8qKOO6QhtNo36Ht1I","level":"info","message":"auth send jwt","requestID":"d426c8b9b3d7cf8870b11e0df6721abc"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d426c8b9b3d7cf8870b11e0df6721abc","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"d426c8b9b3d7cf8870b11e0df6721abc"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":360,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":360,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.673359,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"d426c8b9b3d7cf8870b11e0df6721abc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837889,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4OX0.EiJrIYbR1qQzYnSH_SP0fn_buT8qKOO6QhtNo36Ht1I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d426c8b9b3d7cf8870b11e0df6721abc","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c504b151-2ded-439b-9a63-767bc158bc7d"},"level":"info","message":"Attempting to run experiment","requestID":"d426c8b9b3d7cf8870b11e0df6721abc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c504b151-2ded-439b-9a63-767bc158bc7d"},"level":"info","message":"Attempting to book experiment","requestID":"d426c8b9b3d7cf8870b11e0df6721abc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c504b151-2ded-439b-9a63-767bc158bc7d"},"level":"info","message":"Successfully booked experiment","requestID":"d426c8b9b3d7cf8870b11e0df6721abc"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"510dd7c0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"510dfed0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":361,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":361,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.927134,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/49783f83-7f36-41a8-839c-c98d91601477","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"510dd7c0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/49783f83-7f36-41a8-839c-c98d91601477","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837889,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4OX0.EiJrIYbR1qQzYnSH_SP0fn_buT8qKOO6QhtNo36Ht1I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"510dd7c0-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:44272","level":"info","msg":"Received request.","req_id":362,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"client_addr":"127.0.0.1:44272","level":"info","msg":"Sent response.","req_id":362,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.926124,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/62c21e07-819b-4594-9218-5844be80e852","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"510dfed0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/62c21e07-819b-4594-9218-5844be80e852","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837889,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4OX0.EiJrIYbR1qQzYnSH_SP0fn_buT8qKOO6QhtNo36Ht1I"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"510dfed0-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49783f83-7f36-41a8-839c-c98d91601477","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49783f83-7f36-41a8-839c-c98d91601477","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:07.179993904Z"}]},"request_id":"0ba33474-45fe-4528-a5c5-7b058221a58f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837889.3488963} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"510dd7c0-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62c21e07-819b-4594-9218-5844be80e852","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62c21e07-819b-4594-9218-5844be80e852","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:07.226449824Z"}]},"request_id":"0deabfb9-b3cd-4a32-811f-122e50302403","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837889.3508086} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"510dfed0-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"510dd7c0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/49783f83-7f36-41a8-839c-c98d91601477? 200 15ms","method":"GET","requestID":"510dd7c0-49d8-11ef-9fe8-9113c2c8d024","responseTime":15,"status":200,"url":"/devices/49783f83-7f36-41a8-839c-c98d91601477?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"510dfed0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/62c21e07-819b-4594-9218-5844be80e852? 200 15ms","method":"GET","requestID":"510dfed0-49d8-11ef-9fe8-9113c2c8d024","responseTime":15,"status":200,"url":"/devices/62c21e07-819b-4594-9218-5844be80e852?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c504b151-2ded-439b-9a63-767bc158bc7d"},"level":"info","message":"Setting up experiment","requestID":"d426c8b9b3d7cf8870b11e0df6721abc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c504b151-2ded-439b-9a63-767bc158bc7d"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"d426c8b9b3d7cf8870b11e0df6721abc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c504b151-2ded-439b-9a63-767bc158bc7d"},"level":"info","message":"Successfully locked booking for experiment","requestID":"d426c8b9b3d7cf8870b11e0df6721abc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c504b151-2ded-439b-9a63-767bc158bc7d"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"d426c8b9b3d7cf8870b11e0df6721abc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c504b151-2ded-439b-9a63-767bc158bc7d"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"d426c8b9b3d7cf8870b11e0df6721abc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c504b151-2ded-439b-9a63-767bc158bc7d"},"level":"info","message":"Attempting to update booking for experiment","requestID":"d426c8b9b3d7cf8870b11e0df6721abc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c504b151-2ded-439b-9a63-767bc158bc7d"},"level":"info","message":"Successfully updated booking for experiment","requestID":"d426c8b9b3d7cf8870b11e0df6721abc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c504b151-2ded-439b-9a63-767bc158bc7d"},"level":"info","message":"Successfully set up experiment","requestID":"d426c8b9b3d7cf8870b11e0df6721abc"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"51185f10-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"51188620-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5118ad30-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":363,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":363,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.670187,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:09Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c504b151-2ded-439b-9a63-767bc158bc7d"},"level":"info","message":"Successfully running experiment","requestID":"d426c8b9b3d7cf8870b11e0df6721abc"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/49783f83-7f36-41a8-839c-c98d91601477","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"51185f10-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/49783f83-7f36-41a8-839c-c98d91601477","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837889,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4OX0.EiJrIYbR1qQzYnSH_SP0fn_buT8qKOO6QhtNo36Ht1I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"51185f10-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:44272","level":"info","msg":"Received request.","req_id":364,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"client_addr":"127.0.0.1:44272","level":"info","msg":"Sent response.","req_id":364,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.73449,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/62c21e07-819b-4594-9218-5844be80e852","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"51188620-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/62c21e07-819b-4594-9218-5844be80e852","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837889,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4OX0.EiJrIYbR1qQzYnSH_SP0fn_buT8qKOO6QhtNo36Ht1I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"51188620-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49783f83-7f36-41a8-839c-c98d91601477","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49783f83-7f36-41a8-839c-c98d91601477","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:07.179993904Z"}]},"request_id":"49b94e6e-a7b8-40bf-83f7-e7d8352b2101","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837889.4201207} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"51185f10-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62c21e07-819b-4594-9218-5844be80e852","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62c21e07-819b-4594-9218-5844be80e852","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:07.226449824Z"}]},"request_id":"68837735-79ad-4de5-abd0-f1ebfa50fe78","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837889.421124} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"51188620-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:44280","level":"info","msg":"Received request.","req_id":365,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49783f83-7f36-41a8-839c-c98d91601477","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"445bbcaf-1da6-4d93-87a9-2114a7c6509f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837889.4243977} authorization-1 | {"client_addr":"127.0.0.1:44280","level":"info","msg":"Sent response.","req_id":365,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.808382,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/49783f83-7f36-41a8-839c-c98d91601477","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5118ad30-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/49783f83-7f36-41a8-839c-c98d91601477","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":"51185f10-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"5118ad30-49d8-11ef-9fe8-9113c2c8d024","responseTime":12,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/49783f83-7f36-41a8-839c-c98d91601477? 200 17ms","method":"GET","requestID":"51185f10-49d8-11ef-9fe8-9113c2c8d024","responseTime":17,"status":200,"url":"/devices/49783f83-7f36-41a8-839c-c98d91601477?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"51188620-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/62c21e07-819b-4594-9218-5844be80e852? 200 20ms","method":"GET","requestID":"51188620-49d8-11ef-9fe8-9113c2c8d024","responseTime":20,"status":200,"url":"/devices/62c21e07-819b-4594-9218-5844be80e852?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5118ad30-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/49783f83-7f36-41a8-839c-c98d91601477/signaling 200 21ms","method":"POST","requestID":"5118ad30-49d8-11ef-9fe8-9113c2c8d024","responseTime":21,"status":200,"url":"/devices/49783f83-7f36-41a8-839c-c98d91601477/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"511c0890-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc504b151-2ded-439b-9a63-767bc158bc7d#owner@http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc504b151-2ded-439b-9a63-767bc158bc7d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"e5e2fc39-052a-44e8-9b1b-6e0b140ef61d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837889.43427} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"511c56b0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d3a60a67-081a-439a-a950-cc0d28a1b333","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837889.4350717} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"d426c8b9b3d7cf8870b11e0df6721abc","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":366,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"client_addr":"127.0.0.1:44272","level":"info","msg":"Received request.","req_id":367,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49783f83-7f36-41a8-839c-c98d91601477","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0217504e-c356-4b81-b9ec-f91e68ffbdf8","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837889.4418013} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62c21e07-819b-4594-9218-5844be80e852","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7756689e-40d8-40a9-954d-027af89dbac3","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837889.4424908} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":366,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.705328,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/49783f83-7f36-41a8-839c-c98d91601477","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"511c0890-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/49783f83-7f36-41a8-839c-c98d91601477","object_type":"device","rebac_allow":false,"scope_allow":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":"511c0890-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:44272","level":"info","msg":"Sent response.","req_id":367,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.947575,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/62c21e07-819b-4594-9218-5844be80e852","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"511c56b0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/62c21e07-819b-4594-9218-5844be80e852","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"511c56b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/c504b151-2ded-439b-9a63-767bc158bc7d","user":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"d426c8b9b3d7cf8870b11e0df6721abc"} gateway-1 | {"time_local":"24/Jul/2024:16:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1287","request_time":"0.159","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d426c8b9b3d7cf8870b11e0df6721abc"} experiment-1 | {"level":"info","message":"POST /experiments? 201 152ms","method":"POST","requestID":"d426c8b9b3d7cf8870b11e0df6721abc","responseTime":152,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"511c0890-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/49783f83-7f36-41a8-839c-c98d91601477/signaling 200 15ms","method":"POST","requestID":"511c0890-49d8-11ef-9fe8-9113c2c8d024","responseTime":15,"status":200,"url":"/devices/49783f83-7f36-41a8-839c-c98d91601477/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"511c56b0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/62c21e07-819b-4594-9218-5844be80e852/signaling 200 14ms","method":"POST","requestID":"511c56b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":14,"status":200,"url":"/devices/62c21e07-819b-4594-9218-5844be80e852/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"511ea0a0-49d8-11ef-9fe8-9113c2c8d024"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4OX0.EiJrIYbR1qQzYnSH_SP0fn_buT8qKOO6QhtNo36Ht1I","level":"info","message":"auth send jwt","requestID":"1d2b1e76748599aef060adebf0c4ce91"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1d2b1e76748599aef060adebf0c4ce91","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1d2b1e76748599aef060adebf0c4ce91"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":368,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"client_addr":"127.0.0.1:44272","level":"info","msg":"Received request.","req_id":369,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62c21e07-819b-4594-9218-5844be80e852","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f8b9995f-cea1-4285-9269-8662281f2f84","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837889.454974} authorization-1 | {"client_addr":"127.0.0.1:44272","level":"info","msg":"Sent response.","req_id":369,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.725578,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/49783f83-7f36-41a8-839c-c98d91601477","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"1d2b1e76748599aef060adebf0c4ce91","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/49783f83-7f36-41a8-839c-c98d91601477","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837889,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4OX0.EiJrIYbR1qQzYnSH_SP0fn_buT8qKOO6QhtNo36Ht1I"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1d2b1e76748599aef060adebf0c4ce91","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":368,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.106376,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/62c21e07-819b-4594-9218-5844be80e852","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"511ea0a0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/62c21e07-819b-4594-9218-5844be80e852","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"511ea0a0-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49783f83-7f36-41a8-839c-c98d91601477","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49783f83-7f36-41a8-839c-c98d91601477","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:07.179993904Z"}]},"request_id":"0d0d5e55-06be-4ccf-8659-35aeff734dda","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837889.4595263} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"511ea0a0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"1d2b1e76748599aef060adebf0c4ce91","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/62c21e07-819b-4594-9218-5844be80e852/signaling 200 10ms","method":"POST","requestID":"511ea0a0-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/devices/62c21e07-819b-4594-9218-5844be80e852/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c504b151-2ded-439b-9a63-767bc158bc7d"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"d426c8b9b3d7cf8870b11e0df6721abc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c504b151-2ded-439b-9a63-767bc158bc7d"},"level":"info","message":"Building connection plan","requestID":"d426c8b9b3d7cf8870b11e0df6721abc"} 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":"5ce3d599-d78a-4d12-93ec-b91a0e5e2b78"},{"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":"691dbf7a-4311-4574-9660-d2fc9c4424ea"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"b06f4246-92dc-4eb4-85d4-115ed5f0318d"}]},"level":"info","message":"Built pairwise service configurations","requestID":"d426c8b9b3d7cf8870b11e0df6721abc"} experiment-1 | {"data":{"connectionPlan":[{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/49783f83-7f36-41a8-839c-c98d91601477"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/62c21e07-819b-4594-9218-5844be80e852"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"d426c8b9b3d7cf8870b11e0df6721abc"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1d2b1e76748599aef060adebf0c4ce91"} gateway-1 | {"time_local":"24/Jul/2024:16:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/49783f83-7f36-41a8-839c-c98d91601477? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1d2b1e76748599aef060adebf0c4ce91"} device-1 | {"level":"info","message":"GET /devices/49783f83-7f36-41a8-839c-c98d91601477? 200 11ms","method":"GET","requestID":"1d2b1e76748599aef060adebf0c4ce91","responseTime":11,"status":200,"url":"/devices/49783f83-7f36-41a8-839c-c98d91601477?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"5120c380-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":370,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:09Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4OX0.EiJrIYbR1qQzYnSH_SP0fn_buT8qKOO6QhtNo36Ht1I","level":"info","message":"auth send jwt","requestID":"d6692a88c2f97f98d75822462ca8522c"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":370,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.679132,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:09Z"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d6692a88c2f97f98d75822462ca8522c","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5120c380-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837889,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4OX0.EiJrIYbR1qQzYnSH_SP0fn_buT8qKOO6QhtNo36Ht1I"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d6692a88c2f97f98d75822462ca8522c"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5120c380-49d8-11ef-9fe8-9113c2c8d024","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":371,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":371,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.245811,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/62c21e07-819b-4594-9218-5844be80e852","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"d6692a88c2f97f98d75822462ca8522c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/62c21e07-819b-4594-9218-5844be80e852","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837889,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4OX0.EiJrIYbR1qQzYnSH_SP0fn_buT8qKOO6QhtNo36Ht1I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d6692a88c2f97f98d75822462ca8522c","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","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%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"dd33494a-933f-4d2a-8dd5-c6c4af5d9eaa","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837889.4761336} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"df65da2e-db79-438c-8e97-88a144d5f223","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837889.476287} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62c21e07-819b-4594-9218-5844be80e852","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62c21e07-819b-4594-9218-5844be80e852","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:07.226449824Z"}]},"request_id":"b7a91ae8-8e42-4c02-af23-38bcf9c768d2","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837889.4768689} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"5120c380-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d6692a88c2f97f98d75822462ca8522c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d6692a88c2f97f98d75822462ca8522c"} device-1 | {"level":"info","message":"GET /devices/62c21e07-819b-4594-9218-5844be80e852? 200 14ms","method":"GET","requestID":"d6692a88c2f97f98d75822462ca8522c","responseTime":14,"status":200,"url":"/devices/62c21e07-819b-4594-9218-5844be80e852?"} gateway-1 | {"time_local":"24/Jul/2024:16:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/62c21e07-819b-4594-9218-5844be80e852? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d6692a88c2f97f98d75822462ca8522c"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"5120c380-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"5120c380-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/eec8592d-9cc9-4914-b59c-75c4c4c2fe1c'","requestID":"5120c380-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/eec8592d-9cc9-4914-b59c-75c4c4c2fe1c'","requestID":"5120c380-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"5120c380-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 30ms","method":"POST","requestID":"5120c380-49d8-11ef-9fe8-9113c2c8d024","responseTime":30,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"5120c380-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/eec8592d-9cc9-4914-b59c-75c4c4c2fe1c","device":"49783f83-7f36-41a8-839c-c98d91601477","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/eec8592d-9cc9-4914-b59c-75c4c4c2fe1c","device":"62c21e07-819b-4594-9218-5844be80e852","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c504b151-2ded-439b-9a63-767bc158bc7d"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"d426c8b9b3d7cf8870b11e0df6721abc"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5129c430-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":372,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49783f83-7f36-41a8-839c-c98d91601477","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"479071e5-5e08-4e9e-a90b-b0b2a0954d5f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837889.5275128} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":372,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.643145,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/49783f83-7f36-41a8-839c-c98d91601477","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5129c430-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/49783f83-7f36-41a8-839c-c98d91601477","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5129c430-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5129c430-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/49783f83-7f36-41a8-839c-c98d91601477/signaling 200 9ms","method":"POST","requestID":"5129c430-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/devices/49783f83-7f36-41a8-839c-c98d91601477/signaling"} device-1 | {"device":"49783f83-7f36-41a8-839c-c98d91601477","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"49783f83-7f36-41a8-839c-c98d91601477","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"512b98f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"device":"62c21e07-819b-4594-9218-5844be80e852","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":373,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:09Z"} device-1 | {"content":{"canTrickle":true},"device":"62c21e07-819b-4594-9218-5844be80e852","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62c21e07-819b-4594-9218-5844be80e852","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a9720755-14fd-49e8-ae62-a7f511a3e2bd","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837889.539468} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":373,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.153484,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/62c21e07-819b-4594-9218-5844be80e852","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"512b98f0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/62c21e07-819b-4594-9218-5844be80e852","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"512b98f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"512b98f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/62c21e07-819b-4594-9218-5844be80e852/signaling 200 9ms","method":"POST","requestID":"512b98f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/devices/62c21e07-819b-4594-9218-5844be80e852/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 6411616364123366980 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:kRKk\r\na=ice-pwd:73+6Cz2VVSTaCUx7nn7JIDLY\r\na=ice-options:trickle\r\na=fingerprint:sha-256 76:E6:BD:E3:F4:9F:79:3F:46:5E:EF:5A:62:DC:E1:B4:E2:18:F1:29:64:A0:0C:E2:2A:5C:67:0C:9D:BD:BA:44\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"62c21e07-819b-4594-9218-5844be80e852","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 2206307207498210653 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:eReJ\r\na=ice-pwd:c3X74wY+R1d5H420lBVQnO2O\r\na=ice-options:trickle\r\na=fingerprint:sha-256 45:CE:DF:EA:42:74:B2:54:AC:D1:A2:45:38:BF:C7:42:63:93:6F:6D:2A:DB:87:15:52:38:32:18:54:EA:0D:AD\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"49783f83-7f36-41a8-839c-c98d91601477","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:1137007568 1 udp 2113937151 f112444a-d897-4b58-a1c8-4dc43a773dff.local 59529 typ host generation 0 ufrag eReJ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"49783f83-7f36-41a8-839c-c98d91601477","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3505322691 1 udp 1677729535 141.24.211.56 59529 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag eReJ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"49783f83-7f36-41a8-839c-c98d91601477","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/49783f83-7f36-41a8-839c-c98d91601477'"} device-1 | {"content":{"candidate":"candidate:965488689 1 udp 2113937151 a1bffa39-7478-4a23-95af-44cdfa95c52c.local 42876 typ host generation 0 ufrag kRKk network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"62c21e07-819b-4594-9218-5844be80e852","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2863108386 1 udp 1677729535 141.24.211.56 42876 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag kRKk network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"62c21e07-819b-4594-9218-5844be80e852","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/62c21e07-819b-4594-9218-5844be80e852'"} device-1 | {"device":"62c21e07-819b-4594-9218-5844be80e852","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"49783f83-7f36-41a8-839c-c98d91601477","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/eec8592d-9cc9-4914-b59c-75c4c4c2fe1c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"eec8592d-9cc9-4914-b59c-75c4c4c2fe1c","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"49783f83-7f36-41a8-839c-c98d91601477","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3c4e171d3bf5d2e7e8798624d8329627","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"62c21e07-819b-4594-9218-5844be80e852","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3c4e171d3bf5d2e7e8798624d8329627","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/49783f83-7f36-41a8-839c-c98d91601477"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/62c21e07-819b-4594-9218-5844be80e852"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/eec8592d-9cc9-4914-b59c-75c4c4c2fe1c"}}},"level":"info","message":"received a callback","requestID":"3c4e171d3bf5d2e7e8798624d8329627"} device-1 | {"device":"62c21e07-819b-4594-9218-5844be80e852","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"49783f83-7f36-41a8-839c-c98d91601477","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":"3c4e171d3bf5d2e7e8798624d8329627","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"3c4e171d3bf5d2e7e8798624d8329627"} device-1 | {"device":"49783f83-7f36-41a8-839c-c98d91601477","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"eec8592d-9cc9-4914-b59c-75c4c4c2fe1c","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"eec8592d-9cc9-4914-b59c-75c4c4c2fe1c","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/eec8592d-9cc9-4914-b59c-75c4c4c2fe1c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"eec8592d-9cc9-4914-b59c-75c4c4c2fe1c","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2ef21a2c8f8e82a90829709907f8d300","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2ef21a2c8f8e82a90829709907f8d300","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/49783f83-7f36-41a8-839c-c98d91601477"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/62c21e07-819b-4594-9218-5844be80e852"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/eec8592d-9cc9-4914-b59c-75c4c4c2fe1c"}}},"level":"info","message":"received a callback","requestID":"2ef21a2c8f8e82a90829709907f8d300"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"51362040-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":374,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Feec8592d-9cc9-4914-b59c-75c4c4c2fe1c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"faa6677f-dbd9-41d0-a539-175e381aba8e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837889.608917} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":374,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.170524,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/eec8592d-9cc9-4914-b59c-75c4c4c2fe1c","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"51362040-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/eec8592d-9cc9-4914-b59c-75c4c4c2fe1c","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":"51362040-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"51362040-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /peerconnections/eec8592d-9cc9-4914-b59c-75c4c4c2fe1c 200 8ms","method":"GET","requestID":"51362040-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/peerconnections/eec8592d-9cc9-4914-b59c-75c4c4c2fe1c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 34ms","method":"POST","requestID":"2ef21a2c8f8e82a90829709907f8d300","responseTime":34,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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.036","http_referrer":"","http_user_agent":"node-fetch","requestID":"2ef21a2c8f8e82a90829709907f8d300"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"513ab420-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":375,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49783f83-7f36-41a8-839c-c98d91601477","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dadcea58-3e0a-4651-a6fe-6b3cd70d5089","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837889.6388931} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":375,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.060499,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/49783f83-7f36-41a8-839c-c98d91601477","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"513ab420-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/49783f83-7f36-41a8-839c-c98d91601477","object_type":"device","rebac_allow":false,"scope_allow":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":"513ab420-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"513ab420-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/49783f83-7f36-41a8-839c-c98d91601477/signaling 200 9ms","method":"POST","requestID":"513ab420-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/devices/49783f83-7f36-41a8-839c-c98d91601477/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"513c3ac0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":376,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62c21e07-819b-4594-9218-5844be80e852","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3a219acd-9db5-44dc-bccd-7496dc148b8f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837889.648915} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":376,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.204533,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/62c21e07-819b-4594-9218-5844be80e852","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"513c3ac0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/62c21e07-819b-4594-9218-5844be80e852","object_type":"device","rebac_allow":false,"scope_allow":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":"513c3ac0-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"513c3ac0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/62c21e07-819b-4594-9218-5844be80e852/signaling 200 8ms","method":"POST","requestID":"513c3ac0-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/devices/62c21e07-819b-4594-9218-5844be80e852/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4OX0.EiJrIYbR1qQzYnSH_SP0fn_buT8qKOO6QhtNo36Ht1I","level":"info","message":"auth send jwt","requestID":"c8af2cd0a9b88e56894ce1f1736b3dcf"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c8af2cd0a9b88e56894ce1f1736b3dcf","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/c504b151-2ded-439b-9a63-767bc158bc7d","requestID":"c8af2cd0a9b88e56894ce1f1736b3dcf"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":377,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":377,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.252543,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c504b151-2ded-439b-9a63-767bc158bc7d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"c8af2cd0a9b88e56894ce1f1736b3dcf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/c504b151-2ded-439b-9a63-767bc158bc7d","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837889,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4OX0.EiJrIYbR1qQzYnSH_SP0fn_buT8qKOO6QhtNo36Ht1I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c8af2cd0a9b88e56894ce1f1736b3dcf","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/c504b151-2ded-439b-9a63-767bc158bc7d","requestID":"c8af2cd0a9b88e56894ce1f1736b3dcf"} gateway-1 | {"time_local":"24/Jul/2024:16:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/c504b151-2ded-439b-9a63-767bc158bc7d HTTP/1.1","status": "200","body_bytes_sent":"1360","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c8af2cd0a9b88e56894ce1f1736b3dcf"} experiment-1 | {"level":"info","message":"GET /experiments/c504b151-2ded-439b-9a63-767bc158bc7d 200 13ms","method":"GET","requestID":"c8af2cd0a9b88e56894ce1f1736b3dcf","responseTime":14,"status":200,"url":"/experiments/c504b151-2ded-439b-9a63-767bc158bc7d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4OX0.EiJrIYbR1qQzYnSH_SP0fn_buT8qKOO6QhtNo36Ht1I","level":"info","message":"auth send jwt","requestID":"6e96b296991abc63fba91b0b4549a7bc"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6e96b296991abc63fba91b0b4549a7bc","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/c504b151-2ded-439b-9a63-767bc158bc7d","requestID":"6e96b296991abc63fba91b0b4549a7bc"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":378,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":378,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.653138,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c504b151-2ded-439b-9a63-767bc158bc7d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6e96b296991abc63fba91b0b4549a7bc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/c504b151-2ded-439b-9a63-767bc158bc7d","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837889,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4OX0.EiJrIYbR1qQzYnSH_SP0fn_buT8qKOO6QhtNo36Ht1I"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6e96b296991abc63fba91b0b4549a7bc","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c504b151-2ded-439b-9a63-767bc158bc7d"},"level":"info","message":"Attempting to finish experiment","requestID":"6e96b296991abc63fba91b0b4549a7bc"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"51475e50-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":379,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":379,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.089535,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/eec8592d-9cc9-4914-b59c-75c4c4c2fe1c","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"51475e50-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:http://localhost/peerconnections/eec8592d-9cc9-4914-b59c-75c4c4c2fe1c","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837889,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4OX0.EiJrIYbR1qQzYnSH_SP0fn_buT8qKOO6QhtNo36Ht1I"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"51475e50-49d8-11ef-9fe8-9113c2c8d024","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/eec8592d-9cc9-4914-b59c-75c4c4c2fe1c","device":"49783f83-7f36-41a8-839c-c98d91601477","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/eec8592d-9cc9-4914-b59c-75c4c4c2fe1c","device":"62c21e07-819b-4594-9218-5844be80e852","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/eec8592d-9cc9-4914-b59c-75c4c4c2fe1c' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/eec8592d-9cc9-4914-b59c-75c4c4c2fe1c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"eec8592d-9cc9-4914-b59c-75c4c4c2fe1c","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Feec8592d-9cc9-4914-b59c-75c4c4c2fe1c': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Feec8592d-9cc9-4914-b59c-75c4c4c2fe1c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"0eb45e8a-6a2b-46e8-8c85-bcc0bfbd7a25","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837889.7420056} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8b7dc9c1a9e98f444ebaad23c804a023","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"43900016-5fb6-40bc-a036-82392e1eae69","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837889.7424812} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"8b7dc9c1a9e98f444ebaad23c804a023","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/49783f83-7f36-41a8-839c-c98d91601477"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/62c21e07-819b-4594-9218-5844be80e852"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/eec8592d-9cc9-4914-b59c-75c4c4c2fe1c"}}},"level":"info","message":"received a callback","requestID":"8b7dc9c1a9e98f444ebaad23c804a023"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2502bb0bfe021ade0cbdb0cb1060f069","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"51475e50-49d8-11ef-9fe8-9113c2c8d024","responseTime":12,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"2502bb0bfe021ade0cbdb0cb1060f069","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/49783f83-7f36-41a8-839c-c98d91601477"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/62c21e07-819b-4594-9218-5844be80e852"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/eec8592d-9cc9-4914-b59c-75c4c4c2fe1c"}}},"level":"info","message":"received a callback","requestID":"2502bb0bfe021ade0cbdb0cb1060f069"} device-1 | {"data":{"peerconnection":"eec8592d-9cc9-4914-b59c-75c4c4c2fe1c","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"51475e50-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"DELETE /peerconnections/eec8592d-9cc9-4914-b59c-75c4c4c2fe1c 204 48ms","method":"DELETE","requestID":"51475e50-49d8-11ef-9fe8-9113c2c8d024","responseTime":48,"status":204,"url":"/peerconnections/eec8592d-9cc9-4914-b59c-75c4c4c2fe1c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c504b151-2ded-439b-9a63-767bc158bc7d"},"level":"info","message":"Successfully finished experiment","requestID":"6e96b296991abc63fba91b0b4549a7bc"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"51520cb0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":380,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49783f83-7f36-41a8-839c-c98d91601477","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5891bcbd-bbd2-49aa-9530-8f240b704c88","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837889.795039} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":380,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.222021,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/49783f83-7f36-41a8-839c-c98d91601477","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"51520cb0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/49783f83-7f36-41a8-839c-c98d91601477","object_type":"device","rebac_allow":false,"scope_allow":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":"51520cb0-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"51520cb0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc504b151-2ded-439b-9a63-767bc158bc7d': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc504b151-2ded-439b-9a63-767bc158bc7d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"e15951ca-0fe6-48a0-895e-c2a8fc5bbbd2","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837889.803093} device-1 | {"level":"info","message":"POST /devices/49783f83-7f36-41a8-839c-c98d91601477/signaling 200 16ms","method":"POST","requestID":"51520cb0-49d8-11ef-9fe8-9113c2c8d024","responseTime":16,"status":200,"url":"/devices/49783f83-7f36-41a8-839c-c98d91601477/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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5ed7aa2c-8c5c-4b34-9e2c-ebc3b9d21ba3","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837889.8036158} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"6e96b296991abc63fba91b0b4549a7bc","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5154f2e0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":381,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62c21e07-819b-4594-9218-5844be80e852","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c20abbf4-38e3-48f5-9d25-a034fb4e0e79","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837889.8132706} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":381,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.901407,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/62c21e07-819b-4594-9218-5844be80e852","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5154f2e0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/62c21e07-819b-4594-9218-5844be80e852","object_type":"device","rebac_allow":false,"scope_allow":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":"5154f2e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5154f2e0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/62c21e07-819b-4594-9218-5844be80e852/signaling 200 14ms","method":"POST","requestID":"5154f2e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":14,"status":200,"url":"/devices/62c21e07-819b-4594-9218-5844be80e852/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/c504b151-2ded-439b-9a63-767bc158bc7d","requestID":"6e96b296991abc63fba91b0b4549a7bc"} gateway-1 | {"time_local":"24/Jul/2024:16:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/c504b151-2ded-439b-9a63-767bc158bc7d HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.174","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6e96b296991abc63fba91b0b4549a7bc"} experiment-1 | {"level":"info","message":"DELETE /experiments/c504b151-2ded-439b-9a63-767bc158bc7d 204 173ms","method":"DELETE","requestID":"6e96b296991abc63fba91b0b4549a7bc","responseTime":173,"status":204,"url":"/experiments/c504b151-2ded-439b-9a63-767bc158bc7d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 136ms","method":"POST","requestID":"8b7dc9c1a9e98f444ebaad23c804a023","responseTime":136,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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.141","http_referrer":"","http_user_agent":"node-fetch","requestID":"8b7dc9c1a9e98f444ebaad23c804a023"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 135ms","method":"POST","requestID":"2502bb0bfe021ade0cbdb0cb1060f069","responseTime":135,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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.142","http_referrer":"","http_user_agent":"node-fetch","requestID":"2502bb0bfe021ade0cbdb0cb1060f069"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4OX0.EiJrIYbR1qQzYnSH_SP0fn_buT8qKOO6QhtNo36Ht1I","level":"info","message":"auth send jwt","requestID":"23b58398d7fa1d4ff8132fa68fb6816d"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"23b58398d7fa1d4ff8132fa68fb6816d","responseTime":6,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Jul/2024:16:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2887","request_time":"0.666","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a8de5c94c80548c13b15359c7f6404cd"} gateway-1 | {"time_local":"24/Jul/2024:16:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2886","request_time":"0.677","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c8559f7189cabb33dcd36b7f1d5b6f45"} device-1 | {"level":"info","message":"postDevices called","requestID":"23b58398d7fa1d4ff8132fa68fb6816d"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":382,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":382,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":2.900838,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:09Z"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/49783f83-7f36-41a8-839c-c98d91601477' closed"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"23b58398d7fa1d4ff8132fa68fb6816d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837889,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4OX0.EiJrIYbR1qQzYnSH_SP0fn_buT8qKOO6QhtNo36Ht1I"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"23b58398d7fa1d4ff8132fa68fb6816d","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/62c21e07-819b-4594-9218-5844be80e852' 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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4afcd05c-46ee-442e-87d9-754c4bbe032c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"23a9916e-5f4e-4ae2-9801-1395fb801d79","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837889.9110117} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"23b58398d7fa1d4ff8132fa68fb6816d","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cfd554d7-28fc-4a10-bbe2-10145725d60b","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837889.9154549} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"23b58398d7fa1d4ff8132fa68fb6816d","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4afcd05c-46ee-442e-87d9-754c4bbe032c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"0ffe6999-e873-47fb-8fb7-a4c8419ecf1e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837889.9244864} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3d8d7430-2a98-4e97-b04e-44e9679f0123","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837889.924653} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"23b58398d7fa1d4ff8132fa68fb6816d","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4afcd05c-46ee-442e-87d9-754c4bbe032c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4afcd05c-46ee-442e-87d9-754c4bbe032c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:09.924467914Z"}]},"request_id":"63520965-2423-44eb-b580-d439e6b8ded3","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837889.9278288} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"23b58398d7fa1d4ff8132fa68fb6816d","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"23b58398d7fa1d4ff8132fa68fb6816d"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"23b58398d7fa1d4ff8132fa68fb6816d","responseTime":44,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Jul/2024:16:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"23b58398d7fa1d4ff8132fa68fb6816d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4OX0.EiJrIYbR1qQzYnSH_SP0fn_buT8qKOO6QhtNo36Ht1I","level":"info","message":"auth send jwt","requestID":"3f42b0d4f4f28ae5cb38bbf0ad9242aa"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3f42b0d4f4f28ae5cb38bbf0ad9242aa","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"3f42b0d4f4f28ae5cb38bbf0ad9242aa"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":383,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":383,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.984932,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3f42b0d4f4f28ae5cb38bbf0ad9242aa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837889,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg4OX0.EiJrIYbR1qQzYnSH_SP0fn_buT8qKOO6QhtNo36Ht1I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3f42b0d4f4f28ae5cb38bbf0ad9242aa","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ef1b5e4-837d-4636-92c0-f51c41e15a8a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"3c887459-0c16-4972-b5da-9126be677881","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837889.9579265} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"3f42b0d4f4f28ae5cb38bbf0ad9242aa","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d98858d5-9076-4f0a-9a28-9d9bc0f5483e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837889.9620008} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"3f42b0d4f4f28ae5cb38bbf0ad9242aa","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ef1b5e4-837d-4636-92c0-f51c41e15a8a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"ce2ba2c0-040e-4fae-b615-1db934527f3d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837889.973682} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"15f7e477-29c6-44b2-bfad-366edcc1d3cb","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837889.9738703} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"3f42b0d4f4f28ae5cb38bbf0ad9242aa","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ef1b5e4-837d-4636-92c0-f51c41e15a8a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ef1b5e4-837d-4636-92c0-f51c41e15a8a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:09.973654269Z"}]},"request_id":"05a70f73-2d6b-4fb6-90b7-6e5a61bcb6d7","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837889.9783087} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3f42b0d4f4f28ae5cb38bbf0ad9242aa","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3f42b0d4f4f28ae5cb38bbf0ad9242aa"} gateway-1 | {"time_local":"24/Jul/2024:16:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3f42b0d4f4f28ae5cb38bbf0ad9242aa"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"3f42b0d4f4f28ae5cb38bbf0ad9242aa","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5MH0.GFM01-WOQQ1NjNTNwmWGJ4Uabz4x4dmLBfIq6Doidbs","level":"info","message":"auth send jwt","requestID":"301bc2f4ca3b16702fd00a13bc279fd2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"301bc2f4ca3b16702fd00a13bc279fd2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"301bc2f4ca3b16702fd00a13bc279fd2"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":384,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:10Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":384,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.251725,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:10Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"301bc2f4ca3b16702fd00a13bc279fd2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837890,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5MH0.GFM01-WOQQ1NjNTNwmWGJ4Uabz4x4dmLBfIq6Doidbs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"301bc2f4ca3b16702fd00a13bc279fd2","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ef1b5e4-837d-4636-92c0-f51c41e15a8a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ef1b5e4-837d-4636-92c0-f51c41e15a8a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:09.973654269Z"}]},"request_id":"47be1cf6-e8f2-47c8-9c06-23e94a1e3b30","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837890.4795146} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"301bc2f4ca3b16702fd00a13bc279fd2","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"19699155-3e1e-4f51-82f7-9a75b301fa9d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837890.4847174} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"301bc2f4ca3b16702fd00a13bc279fd2","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ef1b5e4-837d-4636-92c0-f51c41e15a8a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ef1b5e4-837d-4636-92c0-f51c41e15a8a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:09.973654269Z"}]},"request_id":"6a077d96-0df9-47ba-9704-312083458295","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837890.497393} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"301bc2f4ca3b16702fd00a13bc279fd2","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"301bc2f4ca3b16702fd00a13bc279fd2"} device-1 | {"level":"info","message":"PATCH /devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a 200 35ms","method":"PATCH","requestID":"301bc2f4ca3b16702fd00a13bc279fd2","responseTime":35,"status":200,"url":"/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a"} gateway-1 | {"time_local":"24/Jul/2024:16:18:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.041","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"301bc2f4ca3b16702fd00a13bc279fd2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5MH0.GFM01-WOQQ1NjNTNwmWGJ4Uabz4x4dmLBfIq6Doidbs","level":"info","message":"auth send jwt","requestID":"85714a940d24d0fcc619a0db413ad169"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"85714a940d24d0fcc619a0db413ad169","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"85714a940d24d0fcc619a0db413ad169"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":385,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:10Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":385,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.945629,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:10Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"85714a940d24d0fcc619a0db413ad169","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837890,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5MH0.GFM01-WOQQ1NjNTNwmWGJ4Uabz4x4dmLBfIq6Doidbs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"85714a940d24d0fcc619a0db413ad169","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"85714a940d24d0fcc619a0db413ad169"} gateway-1 | {"time_local":"24/Jul/2024:16:18:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"85714a940d24d0fcc619a0db413ad169"} device-1 | {"level":"info","message":"POST /devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a/websocket 200 21ms","method":"POST","requestID":"85714a940d24d0fcc619a0db413ad169","responseTime":21,"status":200,"url":"/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5d89a86a5ac860d89d93f60dea10a57e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5d89a86a5ac860d89d93f60dea10a57e","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Jul/2024:16:18:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/4afcd05c-46ee-442e-87d9-754c4bbe032c/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":"5d89a86a5ac860d89d93f60dea10a57e"} device-1 | {"level":"info","message":"OPTIONS /devices/4afcd05c-46ee-442e-87d9-754c4bbe032c/websocket 200 1ms","method":"OPTIONS","requestID":"5d89a86a5ac860d89d93f60dea10a57e","responseTime":1,"status":200,"url":"/devices/4afcd05c-46ee-442e-87d9-754c4bbe032c/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5MX0.8O5c6mrGeh-4jKEC9s-y-6oD5cWkgSHoPyfDbfba6Ck","level":"info","message":"auth send jwt","requestID":"1a3b480a69b04410dbd6f45364ce3cde"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1a3b480a69b04410dbd6f45364ce3cde","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"1a3b480a69b04410dbd6f45364ce3cde"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":386,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:11Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":386,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.10241,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:11Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4afcd05c-46ee-442e-87d9-754c4bbe032c","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"1a3b480a69b04410dbd6f45364ce3cde","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/4afcd05c-46ee-442e-87d9-754c4bbe032c","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837891,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5MX0.8O5c6mrGeh-4jKEC9s-y-6oD5cWkgSHoPyfDbfba6Ck"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1a3b480a69b04410dbd6f45364ce3cde","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"1a3b480a69b04410dbd6f45364ce3cde"} device-1 | {"level":"info","message":"POST /devices/4afcd05c-46ee-442e-87d9-754c4bbe032c/websocket 200 21ms","method":"POST","requestID":"1a3b480a69b04410dbd6f45364ce3cde","responseTime":21,"status":200,"url":"/devices/4afcd05c-46ee-442e-87d9-754c4bbe032c/websocket"} gateway-1 | {"time_local":"24/Jul/2024:16:18:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/4afcd05c-46ee-442e-87d9-754c4bbe032c/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":"1a3b480a69b04410dbd6f45364ce3cde"} device-1 | {"level":"info","message":"device 'http://localhost/devices/4afcd05c-46ee-442e-87d9-754c4bbe032c' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5Mn0.S_jPrh8lOaBQT5Z8C4F4kApmNJ4RdjF6aCcvp7zGoiI","level":"info","message":"auth send jwt","requestID":"803d525a790eb9a46fbba9273d15642b"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"803d525a790eb9a46fbba9273d15642b","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"803d525a790eb9a46fbba9273d15642b"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":387,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:12Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":387,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.218667,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4afcd05c-46ee-442e-87d9-754c4bbe032c","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"803d525a790eb9a46fbba9273d15642b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/4afcd05c-46ee-442e-87d9-754c4bbe032c","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837892,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5Mn0.S_jPrh8lOaBQT5Z8C4F4kApmNJ4RdjF6aCcvp7zGoiI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"803d525a790eb9a46fbba9273d15642b","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4afcd05c-46ee-442e-87d9-754c4bbe032c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4afcd05c-46ee-442e-87d9-754c4bbe032c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:09.924467914Z"}]},"request_id":"ec56bbae-4fb4-4e83-9c22-df05ac49cb5a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837892.0391457} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"803d525a790eb9a46fbba9273d15642b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"803d525a790eb9a46fbba9273d15642b"} gateway-1 | {"time_local":"24/Jul/2024:16:18:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4afcd05c-46ee-442e-87d9-754c4bbe032c? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"803d525a790eb9a46fbba9273d15642b"} device-1 | {"level":"info","message":"GET /devices/4afcd05c-46ee-442e-87d9-754c4bbe032c? 200 18ms","method":"GET","requestID":"803d525a790eb9a46fbba9273d15642b","responseTime":18,"status":200,"url":"/devices/4afcd05c-46ee-442e-87d9-754c4bbe032c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5Mn0.S_jPrh8lOaBQT5Z8C4F4kApmNJ4RdjF6aCcvp7zGoiI","level":"info","message":"auth send jwt","requestID":"bab17121366df51b860d76e2ce3ba874"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"bab17121366df51b860d76e2ce3ba874","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bab17121366df51b860d76e2ce3ba874"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":388,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:12Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":388,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.367513,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"bab17121366df51b860d76e2ce3ba874","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837892,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5Mn0.S_jPrh8lOaBQT5Z8C4F4kApmNJ4RdjF6aCcvp7zGoiI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"bab17121366df51b860d76e2ce3ba874","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ef1b5e4-837d-4636-92c0-f51c41e15a8a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ef1b5e4-837d-4636-92c0-f51c41e15a8a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:09.973654269Z"}]},"request_id":"36a0a9f9-0799-4a67-b9b2-bbbe412c0c8f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837892.0650256} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bab17121366df51b860d76e2ce3ba874","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bab17121366df51b860d76e2ce3ba874"} gateway-1 | {"time_local":"24/Jul/2024:16:18:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bab17121366df51b860d76e2ce3ba874"} device-1 | {"level":"info","message":"GET /devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a? 200 19ms","method":"GET","requestID":"bab17121366df51b860d76e2ce3ba874","responseTime":19,"status":200,"url":"/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5Mn0.S_jPrh8lOaBQT5Z8C4F4kApmNJ4RdjF6aCcvp7zGoiI","level":"info","message":"auth send jwt","requestID":"830bdf8a2b9f62296b7957e1a567b5e9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"830bdf8a2b9f62296b7957e1a567b5e9","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"830bdf8a2b9f62296b7957e1a567b5e9"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":389,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:12Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":389,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.272644,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:12Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"830bdf8a2b9f62296b7957e1a567b5e9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837892,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5Mn0.S_jPrh8lOaBQT5Z8C4F4kApmNJ4RdjF6aCcvp7zGoiI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"830bdf8a2b9f62296b7957e1a567b5e9","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1065cfa1-322e-4c52-9005-a0f2b186f6c1"},"level":"info","message":"Attempting to run experiment","requestID":"830bdf8a2b9f62296b7957e1a567b5e9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1065cfa1-322e-4c52-9005-a0f2b186f6c1"},"level":"info","message":"Attempting to book experiment","requestID":"830bdf8a2b9f62296b7957e1a567b5e9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1065cfa1-322e-4c52-9005-a0f2b186f6c1"},"level":"info","message":"Successfully booked experiment","requestID":"830bdf8a2b9f62296b7957e1a567b5e9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"52b74200-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"52b76910-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":390,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:12Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":390,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.164004,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:12Z"} authorization-1 | {"client_addr":"127.0.0.1:44272","level":"info","msg":"Received request.","req_id":391,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4afcd05c-46ee-442e-87d9-754c4bbe032c","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"52b74200-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/4afcd05c-46ee-442e-87d9-754c4bbe032c","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837892,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5Mn0.S_jPrh8lOaBQT5Z8C4F4kApmNJ4RdjF6aCcvp7zGoiI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"52b74200-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:44272","level":"info","msg":"Sent response.","req_id":391,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.779106,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"52b76910-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837892,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5Mn0.S_jPrh8lOaBQT5Z8C4F4kApmNJ4RdjF6aCcvp7zGoiI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"52b76910-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4afcd05c-46ee-442e-87d9-754c4bbe032c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4afcd05c-46ee-442e-87d9-754c4bbe032c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:09.924467914Z"}]},"request_id":"072d3b32-34ad-46ce-aa56-c8f30bbe19c1","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837892.137704} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"52b74200-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ef1b5e4-837d-4636-92c0-f51c41e15a8a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ef1b5e4-837d-4636-92c0-f51c41e15a8a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:09.973654269Z"}]},"request_id":"f3d0409e-5b75-46f5-9f80-c755774d0faa","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837892.1390982} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"52b76910-49d8-11ef-9fe8-9113c2c8d024","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"52b74200-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/4afcd05c-46ee-442e-87d9-754c4bbe032c? 200 15ms","method":"GET","requestID":"52b74200-49d8-11ef-9fe8-9113c2c8d024","responseTime":15,"status":200,"url":"/devices/4afcd05c-46ee-442e-87d9-754c4bbe032c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"52b76910-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a? 200 15ms","method":"GET","requestID":"52b76910-49d8-11ef-9fe8-9113c2c8d024","responseTime":15,"status":200,"url":"/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1065cfa1-322e-4c52-9005-a0f2b186f6c1"},"level":"info","message":"Setting up experiment","requestID":"830bdf8a2b9f62296b7957e1a567b5e9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1065cfa1-322e-4c52-9005-a0f2b186f6c1"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"830bdf8a2b9f62296b7957e1a567b5e9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1065cfa1-322e-4c52-9005-a0f2b186f6c1"},"level":"info","message":"Successfully locked booking for experiment","requestID":"830bdf8a2b9f62296b7957e1a567b5e9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1065cfa1-322e-4c52-9005-a0f2b186f6c1"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"830bdf8a2b9f62296b7957e1a567b5e9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1065cfa1-322e-4c52-9005-a0f2b186f6c1"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"830bdf8a2b9f62296b7957e1a567b5e9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1065cfa1-322e-4c52-9005-a0f2b186f6c1"},"level":"info","message":"Attempting to update booking for experiment","requestID":"830bdf8a2b9f62296b7957e1a567b5e9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1065cfa1-322e-4c52-9005-a0f2b186f6c1"},"level":"info","message":"Successfully updated booking for experiment","requestID":"830bdf8a2b9f62296b7957e1a567b5e9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1065cfa1-322e-4c52-9005-a0f2b186f6c1"},"level":"info","message":"Successfully set up experiment","requestID":"830bdf8a2b9f62296b7957e1a567b5e9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"52c23e80-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"52c26590-49d8-11ef-9fe8-9113c2c8d024"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1065cfa1-322e-4c52-9005-a0f2b186f6c1"},"level":"info","message":"Successfully running experiment","requestID":"830bdf8a2b9f62296b7957e1a567b5e9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"52c2b3b0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":392,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:12Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":392,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.783133,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4afcd05c-46ee-442e-87d9-754c4bbe032c","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"52c23e80-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/4afcd05c-46ee-442e-87d9-754c4bbe032c","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837892,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5Mn0.S_jPrh8lOaBQT5Z8C4F4kApmNJ4RdjF6aCcvp7zGoiI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"52c23e80-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:44272","level":"info","msg":"Received request.","req_id":393,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:12Z"} authorization-1 | {"client_addr":"127.0.0.1:44272","level":"info","msg":"Sent response.","req_id":393,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.50631,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:12Z"} authorization-1 | {"client_addr":"127.0.0.1:44280","level":"info","msg":"Received request.","req_id":394,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"52c26590-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837892,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5Mn0.S_jPrh8lOaBQT5Z8C4F4kApmNJ4RdjF6aCcvp7zGoiI"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"52c26590-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:44280","level":"info","msg":"Sent response.","req_id":394,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.105945,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:12Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4afcd05c-46ee-442e-87d9-754c4bbe032c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c29ef0d1-86e1-4cae-a57f-e2ea77e10543","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837892.21157} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4afcd05c-46ee-442e-87d9-754c4bbe032c","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"52c2b3b0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4afcd05c-46ee-442e-87d9-754c4bbe032c","object_type":"device","rebac_allow":false,"scope_allow":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":"52c2b3b0-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4afcd05c-46ee-442e-87d9-754c4bbe032c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4afcd05c-46ee-442e-87d9-754c4bbe032c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:09.924467914Z"}]},"request_id":"4b499bcc-b85a-440d-b9ce-3430e69cc116","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837892.2130795} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ef1b5e4-837d-4636-92c0-f51c41e15a8a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ef1b5e4-837d-4636-92c0-f51c41e15a8a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:09.973654269Z"}]},"request_id":"49a6658e-6aed-4f85-bb99-0ac8aa5564bf","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837892.2152727} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"52c23e80-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"52c26590-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"52c2b3b0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/4afcd05c-46ee-442e-87d9-754c4bbe032c/signaling 200 19ms","method":"POST","requestID":"52c2b3b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":19,"status":200,"url":"/devices/4afcd05c-46ee-442e-87d9-754c4bbe032c/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"52c23e80-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/4afcd05c-46ee-442e-87d9-754c4bbe032c? 200 23ms","method":"GET","requestID":"52c23e80-49d8-11ef-9fe8-9113c2c8d024","responseTime":23,"status":200,"url":"/devices/4afcd05c-46ee-442e-87d9-754c4bbe032c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"52c26590-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a? 200 23ms","method":"GET","requestID":"52c26590-49d8-11ef-9fe8-9113c2c8d024","responseTime":23,"status":200,"url":"/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"52c60f10-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"52c65d30-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1065cfa1-322e-4c52-9005-a0f2b186f6c1#owner@http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1065cfa1-322e-4c52-9005-a0f2b186f6c1","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"304801a3-d357-4be1-aa04-c26108fca814","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837892.2270207} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f9d56059-2dca-4cea-b323-7eed210d5ea8","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837892.2272189} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"830bdf8a2b9f62296b7957e1a567b5e9","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":395,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:12Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":395,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.425082,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:12Z"} authorization-1 | {"client_addr":"127.0.0.1:44272","level":"info","msg":"Received request.","req_id":396,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:12Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ef1b5e4-837d-4636-92c0-f51c41e15a8a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6294b448-32e0-4147-b541-0bfdacd2d500","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837892.231097} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4afcd05c-46ee-442e-87d9-754c4bbe032c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"83bbf01c-5ba1-4e28-b3a1-1d898d23e603","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837892.2370284} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"52c60f10-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a","object_type":"device","rebac_allow":false,"scope_allow":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":"52c60f10-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/1065cfa1-322e-4c52-9005-a0f2b186f6c1","user":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"830bdf8a2b9f62296b7957e1a567b5e9"} authorization-1 | {"client_addr":"127.0.0.1:44272","level":"info","msg":"Sent response.","req_id":396,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.654408,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:12Z"} experiment-1 | {"level":"info","message":"POST /experiments? 201 159ms","method":"POST","requestID":"830bdf8a2b9f62296b7957e1a567b5e9","responseTime":159,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"24/Jul/2024:16:18:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1291","request_time":"0.166","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"830bdf8a2b9f62296b7957e1a567b5e9"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4afcd05c-46ee-442e-87d9-754c4bbe032c","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"52c65d30-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4afcd05c-46ee-442e-87d9-754c4bbe032c","object_type":"device","rebac_allow":false,"scope_allow":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":"52c65d30-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"52c60f10-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a/signaling 200 19ms","method":"POST","requestID":"52c60f10-49d8-11ef-9fe8-9113c2c8d024","responseTime":19,"status":200,"url":"/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"52c65d30-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/4afcd05c-46ee-442e-87d9-754c4bbe032c/signaling 200 19ms","method":"POST","requestID":"52c65d30-49d8-11ef-9fe8-9113c2c8d024","responseTime":19,"status":200,"url":"/devices/4afcd05c-46ee-442e-87d9-754c4bbe032c/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5Mn0.S_jPrh8lOaBQT5Z8C4F4kApmNJ4RdjF6aCcvp7zGoiI","level":"info","message":"auth send jwt","requestID":"a9ef953927bdede30110673779336391"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a9ef953927bdede30110673779336391","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a9ef953927bdede30110673779336391"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"52c9dfa0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":397,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:12Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":397,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.893888,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:12Z"} authorization-1 | {"client_addr":"127.0.0.1:44272","level":"info","msg":"Received request.","req_id":398,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:12Z"} authorization-1 | {"client_addr":"127.0.0.1:44272","level":"info","msg":"Sent response.","req_id":398,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.115448,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4afcd05c-46ee-442e-87d9-754c4bbe032c","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"a9ef953927bdede30110673779336391","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/4afcd05c-46ee-442e-87d9-754c4bbe032c","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837892,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5Mn0.S_jPrh8lOaBQT5Z8C4F4kApmNJ4RdjF6aCcvp7zGoiI"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"a9ef953927bdede30110673779336391","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ef1b5e4-837d-4636-92c0-f51c41e15a8a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"300829b0-ed57-4524-892d-7eade4dc95fc","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837892.2551181} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"52c9dfa0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a","object_type":"device","rebac_allow":false,"scope_allow":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":"52c9dfa0-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"52c9dfa0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a/signaling 200 13ms","method":"POST","requestID":"52c9dfa0-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a/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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4afcd05c-46ee-442e-87d9-754c4bbe032c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4afcd05c-46ee-442e-87d9-754c4bbe032c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:09.924467914Z"}]},"request_id":"47e701f1-fe5c-43a0-8c4a-048e4307a09e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837892.2636213} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a9ef953927bdede30110673779336391","responseTime":4,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1065cfa1-322e-4c52-9005-a0f2b186f6c1"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"830bdf8a2b9f62296b7957e1a567b5e9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1065cfa1-322e-4c52-9005-a0f2b186f6c1"},"level":"info","message":"Building connection plan","requestID":"830bdf8a2b9f62296b7957e1a567b5e9"} 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":"326c662a-ff73-4292-91c7-f63c4fa1b1e2"},{"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":"97cf1563-86dd-4c6d-a1f3-f47bd665ca82"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"19872ba8-abcc-4d1b-b7e5-476e4eb0a8c3"}]},"level":"info","message":"Built pairwise service configurations","requestID":"830bdf8a2b9f62296b7957e1a567b5e9"} experiment-1 | {"data":{"connectionPlan":[{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/4afcd05c-46ee-442e-87d9-754c4bbe032c"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"830bdf8a2b9f62296b7957e1a567b5e9"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"52cc50a0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a9ef953927bdede30110673779336391"} gateway-1 | {"time_local":"24/Jul/2024:16:18:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4afcd05c-46ee-442e-87d9-754c4bbe032c? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a9ef953927bdede30110673779336391"} device-1 | {"level":"info","message":"GET /devices/4afcd05c-46ee-442e-87d9-754c4bbe032c? 200 21ms","method":"GET","requestID":"a9ef953927bdede30110673779336391","responseTime":21,"status":200,"url":"/devices/4afcd05c-46ee-442e-87d9-754c4bbe032c?"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":399,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:12Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":399,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.697739,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:12Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"52cc50a0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837892,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5Mn0.S_jPrh8lOaBQT5Z8C4F4kApmNJ4RdjF6aCcvp7zGoiI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"52cc50a0-49d8-11ef-9fe8-9113c2c8d024","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5Mn0.S_jPrh8lOaBQT5Z8C4F4kApmNJ4RdjF6aCcvp7zGoiI","level":"info","message":"auth send jwt","requestID":"94b390a27e1404903a1aa464cc542789"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"94b390a27e1404903a1aa464cc542789","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"94b390a27e1404903a1aa464cc542789"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":400,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:12Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":400,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.956613,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"94b390a27e1404903a1aa464cc542789","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837892,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5Mn0.S_jPrh8lOaBQT5Z8C4F4kApmNJ4RdjF6aCcvp7zGoiI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"94b390a27e1404903a1aa464cc542789","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","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%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"b553728b-48b8-4f27-a935-2c15b82cca4c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837892.2810864} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"aee6035c-782b-4343-9418-0d7de802b237","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837892.2819426} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ef1b5e4-837d-4636-92c0-f51c41e15a8a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ef1b5e4-837d-4636-92c0-f51c41e15a8a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:09.973654269Z"}]},"request_id":"b5a8cb36-1fd4-471b-9f2e-9e6d8f10e092","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837892.2824013} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"94b390a27e1404903a1aa464cc542789","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"52cc50a0-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"94b390a27e1404903a1aa464cc542789"} gateway-1 | {"time_local":"24/Jul/2024:16:18:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"94b390a27e1404903a1aa464cc542789"} device-1 | {"level":"info","message":"GET /devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a? 200 14ms","method":"GET","requestID":"94b390a27e1404903a1aa464cc542789","responseTime":14,"status":200,"url":"/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"52cc50a0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"52cc50a0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/4629eda3-e501-447f-9dd1-4e85fdbfd53e'","requestID":"52cc50a0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/4629eda3-e501-447f-9dd1-4e85fdbfd53e'","requestID":"52cc50a0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"52cc50a0-49d8-11ef-9fe8-9113c2c8d024"} 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":"52cc50a0-49d8-11ef-9fe8-9113c2c8d024","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":"52cc50a0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/4629eda3-e501-447f-9dd1-4e85fdbfd53e","device":"4afcd05c-46ee-442e-87d9-754c4bbe032c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1065cfa1-322e-4c52-9005-a0f2b186f6c1"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"830bdf8a2b9f62296b7957e1a567b5e9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"52d4dc20-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":401,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:12Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4afcd05c-46ee-442e-87d9-754c4bbe032c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"73130359-b804-44a3-810b-71ebbfd1a123","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837892.3274739} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":401,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.836031,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4afcd05c-46ee-442e-87d9-754c4bbe032c","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"52d4dc20-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4afcd05c-46ee-442e-87d9-754c4bbe032c","object_type":"device","rebac_allow":false,"scope_allow":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":"52d4dc20-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"52d4dc20-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/4afcd05c-46ee-442e-87d9-754c4bbe032c/signaling 200 9ms","method":"POST","requestID":"52d4dc20-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/devices/4afcd05c-46ee-442e-87d9-754c4bbe032c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"52d689d0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":402,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:12Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ef1b5e4-837d-4636-92c0-f51c41e15a8a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"203d4d6a-0b0e-48e7-ad20-93d9c4011c2d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837892.336996} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":402,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.338526,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"52d689d0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a","object_type":"device","rebac_allow":false,"scope_allow":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":"52d689d0-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"52d689d0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a/signaling 200 7ms","method":"POST","requestID":"52d689d0-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a/signaling"} device-1 | {"device":"4afcd05c-46ee-442e-87d9-754c4bbe032c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"4afcd05c-46ee-442e-87d9-754c4bbe032c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"8ef1b5e4-837d-4636-92c0-f51c41e15a8a","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"4629eda3-e501-447f-9dd1-4e85fdbfd53e","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 5580045349903525829 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:gb00\r\na=ice-pwd:DPLA86PZd2n+xMNf005HGul7\r\na=ice-options:trickle\r\na=fingerprint:sha-256 A3:45:62:69:9E:56:70:4B:F1:44:0F:18:74:A2:9E:85:A8:60:38:98:87:99:13:58:1E:59:B8:40:D7:D9:88:70\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"4afcd05c-46ee-442e-87d9-754c4bbe032c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:2321868362 1 udp 2113937151 535aa3bf-a6f2-43e8-b11f-0d5c5b436c4f.local 43521 typ host generation 0 ufrag gb00 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"4afcd05c-46ee-442e-87d9-754c4bbe032c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"4afcd05c-46ee-442e-87d9-754c4bbe032c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:424626009 1 udp 1677729535 141.24.211.56 43521 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag gb00 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"4afcd05c-46ee-442e-87d9-754c4bbe032c","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/4629eda3-e501-447f-9dd1-4e85fdbfd53e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4629eda3-e501-447f-9dd1-4e85fdbfd53e","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"8ef1b5e4-837d-4636-92c0-f51c41e15a8a","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"8ef1b5e4-837d-4636-92c0-f51c41e15a8a","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"8ef1b5e4-837d-4636-92c0-f51c41e15a8a","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.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":"a0e442c40393ebbade6689a07dd6d3c1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a0e442c40393ebbade6689a07dd6d3c1","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/4afcd05c-46ee-442e-87d9-754c4bbe032c'"} device-1 | {"device":"4afcd05c-46ee-442e-87d9-754c4bbe032c","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/4afcd05c-46ee-442e-87d9-754c4bbe032c"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/4629eda3-e501-447f-9dd1-4e85fdbfd53e"}}},"level":"info","message":"received a callback","requestID":"a0e442c40393ebbade6689a07dd6d3c1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"a0e442c40393ebbade6689a07dd6d3c1","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"a0e442c40393ebbade6689a07dd6d3c1"} device-1 | {"data":{"peerconnection":"4629eda3-e501-447f-9dd1-4e85fdbfd53e","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"8ef1b5e4-837d-4636-92c0-f51c41e15a8a","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"4afcd05c-46ee-442e-87d9-754c4bbe032c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"8ef1b5e4-837d-4636-92c0-f51c41e15a8a","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"4629eda3-e501-447f-9dd1-4e85fdbfd53e","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"4afcd05c-46ee-442e-87d9-754c4bbe032c","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/4629eda3-e501-447f-9dd1-4e85fdbfd53e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4629eda3-e501-447f-9dd1-4e85fdbfd53e","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"543bcc08b4c78b437091eeb97fb1b290","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"543bcc08b4c78b437091eeb97fb1b290","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/4afcd05c-46ee-442e-87d9-754c4bbe032c"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/4629eda3-e501-447f-9dd1-4e85fdbfd53e"}}},"level":"info","message":"received a callback","requestID":"543bcc08b4c78b437091eeb97fb1b290"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"541439f0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":403,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:14Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4629eda3-e501-447f-9dd1-4e85fdbfd53e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"95f5d3b5-efc2-45d6-8bf7-01cc6a34fbdf","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837894.4212363} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":403,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.694884,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/4629eda3-e501-447f-9dd1-4e85fdbfd53e","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"541439f0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/4629eda3-e501-447f-9dd1-4e85fdbfd53e","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":"541439f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"541439f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /peerconnections/4629eda3-e501-447f-9dd1-4e85fdbfd53e 200 10ms","method":"GET","requestID":"541439f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/peerconnections/4629eda3-e501-447f-9dd1-4e85fdbfd53e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 42ms","method":"POST","requestID":"543bcc08b4c78b437091eeb97fb1b290","responseTime":42,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch","requestID":"543bcc08b4c78b437091eeb97fb1b290"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"541a2d60-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":404,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:14Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4afcd05c-46ee-442e-87d9-754c4bbe032c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d9e8bbed-330d-4826-bccf-f2b3318bff61","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837894.4608889} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":404,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.668188,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4afcd05c-46ee-442e-87d9-754c4bbe032c","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"541a2d60-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4afcd05c-46ee-442e-87d9-754c4bbe032c","object_type":"device","rebac_allow":false,"scope_allow":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":"541a2d60-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"541a2d60-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/4afcd05c-46ee-442e-87d9-754c4bbe032c/signaling 200 13ms","method":"POST","requestID":"541a2d60-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/devices/4afcd05c-46ee-442e-87d9-754c4bbe032c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"541c7750-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":405,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:14Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ef1b5e4-837d-4636-92c0-f51c41e15a8a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"12ad9206-6409-41ca-82ac-52b076618130","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837894.4759893} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":405,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.289995,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"541c7750-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a","object_type":"device","rebac_allow":false,"scope_allow":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":"541c7750-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"541c7750-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a/signaling 200 13ms","method":"POST","requestID":"541c7750-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5NH0.VYKJ95sFWz8CwdhJ-q5hDIo9BuwrhJXcgUUW-fShHQM","level":"info","message":"auth send jwt","requestID":"21db13b5053afbfd83895fc528a3abcf"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"21db13b5053afbfd83895fc528a3abcf","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/1065cfa1-322e-4c52-9005-a0f2b186f6c1","requestID":"21db13b5053afbfd83895fc528a3abcf"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":406,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:14Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":406,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.282218,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/1065cfa1-322e-4c52-9005-a0f2b186f6c1","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"21db13b5053afbfd83895fc528a3abcf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/1065cfa1-322e-4c52-9005-a0f2b186f6c1","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837894,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5NH0.VYKJ95sFWz8CwdhJ-q5hDIo9BuwrhJXcgUUW-fShHQM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"21db13b5053afbfd83895fc528a3abcf","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/1065cfa1-322e-4c52-9005-a0f2b186f6c1","requestID":"21db13b5053afbfd83895fc528a3abcf"} gateway-1 | {"time_local":"24/Jul/2024:16:18:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/1065cfa1-322e-4c52-9005-a0f2b186f6c1 HTTP/1.1","status": "200","body_bytes_sent":"1364","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"21db13b5053afbfd83895fc528a3abcf"} experiment-1 | {"level":"info","message":"GET /experiments/1065cfa1-322e-4c52-9005-a0f2b186f6c1 200 17ms","method":"GET","requestID":"21db13b5053afbfd83895fc528a3abcf","responseTime":17,"status":200,"url":"/experiments/1065cfa1-322e-4c52-9005-a0f2b186f6c1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5NH0.VYKJ95sFWz8CwdhJ-q5hDIo9BuwrhJXcgUUW-fShHQM","level":"info","message":"auth send jwt","requestID":"6d5ecd94cc5a472266f0d746f125f5f0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6d5ecd94cc5a472266f0d746f125f5f0","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/1065cfa1-322e-4c52-9005-a0f2b186f6c1","requestID":"6d5ecd94cc5a472266f0d746f125f5f0"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":407,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:14Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":407,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.227876,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:14Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/1065cfa1-322e-4c52-9005-a0f2b186f6c1","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6d5ecd94cc5a472266f0d746f125f5f0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/1065cfa1-322e-4c52-9005-a0f2b186f6c1","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837894,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5NH0.VYKJ95sFWz8CwdhJ-q5hDIo9BuwrhJXcgUUW-fShHQM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6d5ecd94cc5a472266f0d746f125f5f0","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1065cfa1-322e-4c52-9005-a0f2b186f6c1"},"level":"info","message":"Attempting to finish experiment","requestID":"6d5ecd94cc5a472266f0d746f125f5f0"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"542996b0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":408,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:14Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":408,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.389538,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:14Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/4629eda3-e501-447f-9dd1-4e85fdbfd53e","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"542996b0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:http://localhost/peerconnections/4629eda3-e501-447f-9dd1-4e85fdbfd53e","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837894,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5NH0.VYKJ95sFWz8CwdhJ-q5hDIo9BuwrhJXcgUUW-fShHQM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"542996b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/4629eda3-e501-447f-9dd1-4e85fdbfd53e","device":"4afcd05c-46ee-442e-87d9-754c4bbe032c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"8ef1b5e4-837d-4636-92c0-f51c41e15a8a","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"8ef1b5e4-837d-4636-92c0-f51c41e15a8a","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"8ef1b5e4-837d-4636-92c0-f51c41e15a8a","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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/4629eda3-e501-447f-9dd1-4e85fdbfd53e' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/4629eda3-e501-447f-9dd1-4e85fdbfd53e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4629eda3-e501-447f-9dd1-4e85fdbfd53e","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8a5b45d3e2a4be6d389d5022373f734c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4629eda3-e501-447f-9dd1-4e85fdbfd53e': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4629eda3-e501-447f-9dd1-4e85fdbfd53e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"8ed5a71b-fd04-487d-9b16-27f19329ac8e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837894.586318} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"01410b65-014a-4259-b41e-f82bff0d0e0e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837894.5869946} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"8a5b45d3e2a4be6d389d5022373f734c","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/4afcd05c-46ee-442e-87d9-754c4bbe032c"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/4629eda3-e501-447f-9dd1-4e85fdbfd53e"}}},"level":"info","message":"received a callback","requestID":"8a5b45d3e2a4be6d389d5022373f734c"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"969bf03af24e1eca91c5944b8fce4066","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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 16ms","method":"POST","requestID":"542996b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":16,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"969bf03af24e1eca91c5944b8fce4066","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/4afcd05c-46ee-442e-87d9-754c4bbe032c"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/4629eda3-e501-447f-9dd1-4e85fdbfd53e"}}},"level":"info","message":"received a callback","requestID":"969bf03af24e1eca91c5944b8fce4066"} device-1 | {"data":{"peerconnection":"4629eda3-e501-447f-9dd1-4e85fdbfd53e","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"542996b0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"DELETE /peerconnections/4629eda3-e501-447f-9dd1-4e85fdbfd53e 204 55ms","method":"DELETE","requestID":"542996b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":55,"status":204,"url":"/peerconnections/4629eda3-e501-447f-9dd1-4e85fdbfd53e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1065cfa1-322e-4c52-9005-a0f2b186f6c1"},"level":"info","message":"Successfully finished experiment","requestID":"6d5ecd94cc5a472266f0d746f125f5f0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5435f2c0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":409,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:14Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4afcd05c-46ee-442e-87d9-754c4bbe032c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"333104b6-63d6-471b-9603-3253a90a0efc","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837894.644699} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":409,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.23355,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4afcd05c-46ee-442e-87d9-754c4bbe032c","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5435f2c0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4afcd05c-46ee-442e-87d9-754c4bbe032c","object_type":"device","rebac_allow":false,"scope_allow":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":"5435f2c0-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1065cfa1-322e-4c52-9005-a0f2b186f6c1': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1065cfa1-322e-4c52-9005-a0f2b186f6c1","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"5effcd36-0a81-4c00-8d54-1fbafb4953b1","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837894.6510367} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5435f2c0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/4afcd05c-46ee-442e-87d9-754c4bbe032c/signaling 200 17ms","method":"POST","requestID":"5435f2c0-49d8-11ef-9fe8-9113c2c8d024","responseTime":17,"status":200,"url":"/devices/4afcd05c-46ee-442e-87d9-754c4bbe032c/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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"126a83a3-f7ee-4450-8588-82566ade5403","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837894.6518607} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"6d5ecd94cc5a472266f0d746f125f5f0","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"54390000-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":410,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:14Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ef1b5e4-837d-4636-92c0-f51c41e15a8a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7971c170-c747-464a-bf5d-4784c5583908","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837894.6641607} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":410,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.061876,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"54390000-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a","object_type":"device","rebac_allow":false,"scope_allow":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":"54390000-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"54390000-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a/signaling 200 16ms","method":"POST","requestID":"54390000-49d8-11ef-9fe8-9113c2c8d024","responseTime":16,"status":200,"url":"/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/1065cfa1-322e-4c52-9005-a0f2b186f6c1","requestID":"6d5ecd94cc5a472266f0d746f125f5f0"} gateway-1 | {"time_local":"24/Jul/2024:16:18:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/1065cfa1-322e-4c52-9005-a0f2b186f6c1 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.196","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6d5ecd94cc5a472266f0d746f125f5f0"} experiment-1 | {"level":"info","message":"DELETE /experiments/1065cfa1-322e-4c52-9005-a0f2b186f6c1 204 191ms","method":"DELETE","requestID":"6d5ecd94cc5a472266f0d746f125f5f0","responseTime":191,"status":204,"url":"/experiments/1065cfa1-322e-4c52-9005-a0f2b186f6c1"} gateway-1 | {"time_local":"24/Jul/2024:16:18:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2836","request_time":"4.199","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"61c15694be885a09d889cbe16087c221"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 144ms","method":"POST","requestID":"8a5b45d3e2a4be6d389d5022373f734c","responseTime":144,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 142ms","method":"POST","requestID":"969bf03af24e1eca91c5944b8fce4066","responseTime":142,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.152","http_referrer":"","http_user_agent":"node-fetch","requestID":"969bf03af24e1eca91c5944b8fce4066"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5NH0.VYKJ95sFWz8CwdhJ-q5hDIo9BuwrhJXcgUUW-fShHQM","level":"info","message":"auth send jwt","requestID":"1b4038bb9537fb20ee94522b212dac87"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1b4038bb9537fb20ee94522b212dac87","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1b4038bb9537fb20ee94522b212dac87"} gateway-1 | {"time_local":"24/Jul/2024:16:18:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.155","http_referrer":"","http_user_agent":"node-fetch","requestID":"8a5b45d3e2a4be6d389d5022373f734c"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":411,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:14Z"} gateway-1 | {"time_local":"24/Jul/2024:16:18:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2747","request_time":"2.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":"7251970cdbf5d4744c109939fabf23ea"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/8ef1b5e4-837d-4636-92c0-f51c41e15a8a' closed"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":411,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.098631,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:14Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"1b4038bb9537fb20ee94522b212dac87","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837894,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5NH0.VYKJ95sFWz8CwdhJ-q5hDIo9BuwrhJXcgUUW-fShHQM"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"1b4038bb9537fb20ee94522b212dac87","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/4afcd05c-46ee-442e-87d9-754c4bbe032c' 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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8138a954-0a0b-4596-87d7-8ade8b5a604d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a77d2eb4-25cb-4992-9aee-63f70066f8f4","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837894.756473} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1b4038bb9537fb20ee94522b212dac87","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d29dc28b-a162-4553-bace-a64c452de94d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837894.7619073} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"1b4038bb9537fb20ee94522b212dac87","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8138a954-0a0b-4596-87d7-8ade8b5a604d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"308ecabe-4b11-48cb-b0f9-e87c31b17954","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837894.771619} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"30d87817-0c32-450c-9afd-52fe56fff87c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837894.771708} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"1b4038bb9537fb20ee94522b212dac87","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8138a954-0a0b-4596-87d7-8ade8b5a604d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8138a954-0a0b-4596-87d7-8ade8b5a604d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:14.771593660Z"}]},"request_id":"8376fe40-1e79-4336-8da0-abb0264a6a33","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837894.7762165} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1b4038bb9537fb20ee94522b212dac87","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1b4038bb9537fb20ee94522b212dac87"} gateway-1 | {"time_local":"24/Jul/2024:16:18:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1b4038bb9537fb20ee94522b212dac87"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"1b4038bb9537fb20ee94522b212dac87","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5NH0.VYKJ95sFWz8CwdhJ-q5hDIo9BuwrhJXcgUUW-fShHQM","level":"info","message":"auth send jwt","requestID":"ba7086922424801208a2632b3f5e8c1b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ba7086922424801208a2632b3f5e8c1b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ba7086922424801208a2632b3f5e8c1b"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":412,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:14Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":412,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.658439,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:14Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"ba7086922424801208a2632b3f5e8c1b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837894,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5NH0.VYKJ95sFWz8CwdhJ-q5hDIo9BuwrhJXcgUUW-fShHQM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ba7086922424801208a2632b3f5e8c1b","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde835fec-d024-47bf-bba5-659c354af0c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a3ac6839-6985-43dc-8569-8f2fad4134f3","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837894.804861} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ba7086922424801208a2632b3f5e8c1b","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cacacfd9-556d-4c0b-8321-2c6ce647d251","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837894.809407} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"ba7086922424801208a2632b3f5e8c1b","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde835fec-d024-47bf-bba5-659c354af0c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"72607330-fa99-4359-8b11-c6b9e783324d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837894.8205068} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"af1f8e4e-5054-4bc3-8679-15f9cd51bf99","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837894.8206143} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"ba7086922424801208a2632b3f5e8c1b","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde835fec-d024-47bf-bba5-659c354af0c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde835fec-d024-47bf-bba5-659c354af0c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:14.820478347Z"}]},"request_id":"f61eee9f-fbbc-4c4d-9d9a-0eaff6901398","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837894.8248773} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ba7086922424801208a2632b3f5e8c1b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ba7086922424801208a2632b3f5e8c1b"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"ba7086922424801208a2632b3f5e8c1b","responseTime":43,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Jul/2024:16:18:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ba7086922424801208a2632b3f5e8c1b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5NX0.FuEf4ng2g24PANBE-8uQ_ek7fQ_udQ3GnFFI2qW3q-Q","level":"info","message":"auth send jwt","requestID":"ee741d0a5d607ee301cb80e92604c018"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"ee741d0a5d607ee301cb80e92604c018","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"ee741d0a5d607ee301cb80e92604c018"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":413,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:15Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":413,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.233227,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:15Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/de835fec-d024-47bf-bba5-659c354af0c4","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"ee741d0a5d607ee301cb80e92604c018","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/de835fec-d024-47bf-bba5-659c354af0c4","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837895,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5NX0.FuEf4ng2g24PANBE-8uQ_ek7fQ_udQ3GnFFI2qW3q-Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ee741d0a5d607ee301cb80e92604c018","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde835fec-d024-47bf-bba5-659c354af0c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde835fec-d024-47bf-bba5-659c354af0c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:14.820478347Z"}]},"request_id":"c1170737-0d6a-4455-bb72-c257e339e700","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837895.325373} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ee741d0a5d607ee301cb80e92604c018","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b90e73ee-f4d1-4e74-b289-36906b556850","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837895.3323002} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"ee741d0a5d607ee301cb80e92604c018","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde835fec-d024-47bf-bba5-659c354af0c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde835fec-d024-47bf-bba5-659c354af0c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:14.820478347Z"}]},"request_id":"eb590ce7-e345-437f-96ab-3e8d539803b7","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837895.3452795} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ee741d0a5d607ee301cb80e92604c018","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"ee741d0a5d607ee301cb80e92604c018"} device-1 | {"level":"info","message":"PATCH /devices/de835fec-d024-47bf-bba5-659c354af0c4 200 35ms","method":"PATCH","requestID":"ee741d0a5d607ee301cb80e92604c018","responseTime":35,"status":200,"url":"/devices/de835fec-d024-47bf-bba5-659c354af0c4"} gateway-1 | {"time_local":"24/Jul/2024:16:18:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/de835fec-d024-47bf-bba5-659c354af0c4 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.043","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"ee741d0a5d607ee301cb80e92604c018"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5NX0.FuEf4ng2g24PANBE-8uQ_ek7fQ_udQ3GnFFI2qW3q-Q","level":"info","message":"auth send jwt","requestID":"a565662af597890cbc40fbd3dca0ffe9"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a565662af597890cbc40fbd3dca0ffe9","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a565662af597890cbc40fbd3dca0ffe9"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":414,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:15Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":414,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.232702,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:15Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/de835fec-d024-47bf-bba5-659c354af0c4","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"a565662af597890cbc40fbd3dca0ffe9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/de835fec-d024-47bf-bba5-659c354af0c4","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837895,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5NX0.FuEf4ng2g24PANBE-8uQ_ek7fQ_udQ3GnFFI2qW3q-Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a565662af597890cbc40fbd3dca0ffe9","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a565662af597890cbc40fbd3dca0ffe9"} gateway-1 | {"time_local":"24/Jul/2024:16:18:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/de835fec-d024-47bf-bba5-659c354af0c4/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.029","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"a565662af597890cbc40fbd3dca0ffe9"} device-1 | {"level":"info","message":"POST /devices/de835fec-d024-47bf-bba5-659c354af0c4/websocket 200 22ms","method":"POST","requestID":"a565662af597890cbc40fbd3dca0ffe9","responseTime":22,"status":200,"url":"/devices/de835fec-d024-47bf-bba5-659c354af0c4/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/de835fec-d024-47bf-bba5-659c354af0c4' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fa0fb0ca8791f1adee83a15fd4723de0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"fa0fb0ca8791f1adee83a15fd4723de0","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/8138a954-0a0b-4596-87d7-8ade8b5a604d/websocket 200 1ms","method":"OPTIONS","requestID":"fa0fb0ca8791f1adee83a15fd4723de0","responseTime":1,"status":200,"url":"/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d/websocket"} gateway-1 | {"time_local":"24/Jul/2024:16:18:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/8138a954-0a0b-4596-87d7-8ade8b5a604d/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":"fa0fb0ca8791f1adee83a15fd4723de0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5Nn0.TJLFDskBEjGh60O9f6jAGOLUaToHkGDh-s0raGnc6_I","level":"info","message":"auth send jwt","requestID":"a9428ae205ecb67583a2dbb93033611a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a9428ae205ecb67583a2dbb93033611a","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a9428ae205ecb67583a2dbb93033611a"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":415,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:16Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":415,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.353149,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:16Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"a9428ae205ecb67583a2dbb93033611a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837896,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5Nn0.TJLFDskBEjGh60O9f6jAGOLUaToHkGDh-s0raGnc6_I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a9428ae205ecb67583a2dbb93033611a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a9428ae205ecb67583a2dbb93033611a"} device-1 | {"level":"info","message":"POST /devices/8138a954-0a0b-4596-87d7-8ade8b5a604d/websocket 200 19ms","method":"POST","requestID":"a9428ae205ecb67583a2dbb93033611a","responseTime":19,"status":200,"url":"/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d/websocket"} gateway-1 | {"time_local":"24/Jul/2024:16:18:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8138a954-0a0b-4596-87d7-8ade8b5a604d/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":"a9428ae205ecb67583a2dbb93033611a"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5Nn0.TJLFDskBEjGh60O9f6jAGOLUaToHkGDh-s0raGnc6_I","level":"info","message":"auth send jwt","requestID":"0ad4f32dfe9ba9a7ed9854673b53cdc3"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"0ad4f32dfe9ba9a7ed9854673b53cdc3","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0ad4f32dfe9ba9a7ed9854673b53cdc3"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":416,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:16Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":416,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.275677,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"0ad4f32dfe9ba9a7ed9854673b53cdc3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837896,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5Nn0.TJLFDskBEjGh60O9f6jAGOLUaToHkGDh-s0raGnc6_I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0ad4f32dfe9ba9a7ed9854673b53cdc3","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8138a954-0a0b-4596-87d7-8ade8b5a604d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8138a954-0a0b-4596-87d7-8ade8b5a604d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:14.771593660Z"}]},"request_id":"c97bf70a-d760-4bce-99cc-a27ba233f937","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837896.8936794} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0ad4f32dfe9ba9a7ed9854673b53cdc3","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0ad4f32dfe9ba9a7ed9854673b53cdc3"} device-1 | {"level":"info","message":"GET /devices/8138a954-0a0b-4596-87d7-8ade8b5a604d? 200 18ms","method":"GET","requestID":"0ad4f32dfe9ba9a7ed9854673b53cdc3","responseTime":18,"status":200,"url":"/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d?"} gateway-1 | {"time_local":"24/Jul/2024:16:18:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8138a954-0a0b-4596-87d7-8ade8b5a604d? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0ad4f32dfe9ba9a7ed9854673b53cdc3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5Nn0.TJLFDskBEjGh60O9f6jAGOLUaToHkGDh-s0raGnc6_I","level":"info","message":"auth send jwt","requestID":"3e590643cd8c1af7f935c8e1908a9049"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3e590643cd8c1af7f935c8e1908a9049","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3e590643cd8c1af7f935c8e1908a9049"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":417,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:16Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":417,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.352343,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/de835fec-d024-47bf-bba5-659c354af0c4","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3e590643cd8c1af7f935c8e1908a9049","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/de835fec-d024-47bf-bba5-659c354af0c4","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837896,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5Nn0.TJLFDskBEjGh60O9f6jAGOLUaToHkGDh-s0raGnc6_I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3e590643cd8c1af7f935c8e1908a9049","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde835fec-d024-47bf-bba5-659c354af0c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde835fec-d024-47bf-bba5-659c354af0c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:14.820478347Z"}]},"request_id":"c2346289-d2b7-41fb-93f4-9cf780f1cc71","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837896.919464} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3e590643cd8c1af7f935c8e1908a9049","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3e590643cd8c1af7f935c8e1908a9049"} gateway-1 | {"time_local":"24/Jul/2024:16:18:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/de835fec-d024-47bf-bba5-659c354af0c4? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3e590643cd8c1af7f935c8e1908a9049"} device-1 | {"level":"info","message":"GET /devices/de835fec-d024-47bf-bba5-659c354af0c4? 200 18ms","method":"GET","requestID":"3e590643cd8c1af7f935c8e1908a9049","responseTime":18,"status":200,"url":"/devices/de835fec-d024-47bf-bba5-659c354af0c4?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5Nn0.TJLFDskBEjGh60O9f6jAGOLUaToHkGDh-s0raGnc6_I","level":"info","message":"auth send jwt","requestID":"ccdaa81a66e5961f576ab1f323c32b8c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ccdaa81a66e5961f576ab1f323c32b8c","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"ccdaa81a66e5961f576ab1f323c32b8c"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":418,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:16Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":418,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.205916,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:16Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"ccdaa81a66e5961f576ab1f323c32b8c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837896,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5Nn0.TJLFDskBEjGh60O9f6jAGOLUaToHkGDh-s0raGnc6_I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ccdaa81a66e5961f576ab1f323c32b8c","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c54d36f8-9cce-4e6a-8260-3e5dbd13149d"},"level":"info","message":"Attempting to run experiment","requestID":"ccdaa81a66e5961f576ab1f323c32b8c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c54d36f8-9cce-4e6a-8260-3e5dbd13149d"},"level":"info","message":"Attempting to book experiment","requestID":"ccdaa81a66e5961f576ab1f323c32b8c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c54d36f8-9cce-4e6a-8260-3e5dbd13149d"},"level":"info","message":"Successfully booked experiment","requestID":"ccdaa81a66e5961f576ab1f323c32b8c"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"559ab2e0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"559b0100-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":419,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:16Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":419,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.606301,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:16Z"} authorization-1 | {"client_addr":"127.0.0.1:44272","level":"info","msg":"Received request.","req_id":420,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"559ab2e0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837896,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5Nn0.TJLFDskBEjGh60O9f6jAGOLUaToHkGDh-s0raGnc6_I"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"559ab2e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:44272","level":"info","msg":"Sent response.","req_id":420,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.571733,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/de835fec-d024-47bf-bba5-659c354af0c4","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"559b0100-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/de835fec-d024-47bf-bba5-659c354af0c4","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837896,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5Nn0.TJLFDskBEjGh60O9f6jAGOLUaToHkGDh-s0raGnc6_I"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"559b0100-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8138a954-0a0b-4596-87d7-8ade8b5a604d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8138a954-0a0b-4596-87d7-8ade8b5a604d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:14.771593660Z"}]},"request_id":"655e4482-277d-484d-9a3e-7723b2046cc2","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837896.9825325} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"559ab2e0-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde835fec-d024-47bf-bba5-659c354af0c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde835fec-d024-47bf-bba5-659c354af0c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:14.820478347Z"}]},"request_id":"b35b6db2-7c55-4a3a-8592-c822eb354092","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837896.9832819} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"559b0100-49d8-11ef-9fe8-9113c2c8d024","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"559ab2e0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/8138a954-0a0b-4596-87d7-8ade8b5a604d? 200 15ms","method":"GET","requestID":"559ab2e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":15,"status":200,"url":"/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"559b0100-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/de835fec-d024-47bf-bba5-659c354af0c4? 200 14ms","method":"GET","requestID":"559b0100-49d8-11ef-9fe8-9113c2c8d024","responseTime":14,"status":200,"url":"/devices/de835fec-d024-47bf-bba5-659c354af0c4?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c54d36f8-9cce-4e6a-8260-3e5dbd13149d"},"level":"info","message":"Setting up experiment","requestID":"ccdaa81a66e5961f576ab1f323c32b8c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c54d36f8-9cce-4e6a-8260-3e5dbd13149d"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"ccdaa81a66e5961f576ab1f323c32b8c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c54d36f8-9cce-4e6a-8260-3e5dbd13149d"},"level":"info","message":"Successfully locked booking for experiment","requestID":"ccdaa81a66e5961f576ab1f323c32b8c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c54d36f8-9cce-4e6a-8260-3e5dbd13149d"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"ccdaa81a66e5961f576ab1f323c32b8c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c54d36f8-9cce-4e6a-8260-3e5dbd13149d"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"ccdaa81a66e5961f576ab1f323c32b8c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c54d36f8-9cce-4e6a-8260-3e5dbd13149d"},"level":"info","message":"Attempting to update booking for experiment","requestID":"ccdaa81a66e5961f576ab1f323c32b8c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c54d36f8-9cce-4e6a-8260-3e5dbd13149d"},"level":"info","message":"Successfully updated booking for experiment","requestID":"ccdaa81a66e5961f576ab1f323c32b8c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c54d36f8-9cce-4e6a-8260-3e5dbd13149d"},"level":"info","message":"Successfully set up experiment","requestID":"ccdaa81a66e5961f576ab1f323c32b8c"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"55a53a30-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"55a58850-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"55a5af60-49d8-11ef-9fe8-9113c2c8d024"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c54d36f8-9cce-4e6a-8260-3e5dbd13149d"},"level":"info","message":"Successfully running experiment","requestID":"ccdaa81a66e5961f576ab1f323c32b8c"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":421,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:17Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":421,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.927427,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:17Z"} authorization-1 | {"client_addr":"127.0.0.1:44272","level":"info","msg":"Received request.","req_id":422,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"55a53a30-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837896,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5Nn0.TJLFDskBEjGh60O9f6jAGOLUaToHkGDh-s0raGnc6_I"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"55a53a30-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:44272","level":"info","msg":"Sent response.","req_id":422,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.156684,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/de835fec-d024-47bf-bba5-659c354af0c4","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"55a58850-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/de835fec-d024-47bf-bba5-659c354af0c4","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837896,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5Nn0.TJLFDskBEjGh60O9f6jAGOLUaToHkGDh-s0raGnc6_I"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"55a58850-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43294","level":"info","msg":"Received request.","req_id":423,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:17Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde835fec-d024-47bf-bba5-659c354af0c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde835fec-d024-47bf-bba5-659c354af0c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:14.820478347Z"}]},"request_id":"9887f740-e786-4fa3-9121-df6fce4d612a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837897.0625288} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8138a954-0a0b-4596-87d7-8ade8b5a604d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4943e37a-711f-40e4-af92-db49110bda93","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837897.0629249} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"55a58850-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8138a954-0a0b-4596-87d7-8ade8b5a604d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8138a954-0a0b-4596-87d7-8ade8b5a604d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:14.771593660Z"}]},"request_id":"452a180b-9820-4690-9be9-ff338828c84a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837897.0646093} authorization-1 | {"client_addr":"127.0.0.1:43294","level":"info","msg":"Sent response.","req_id":423,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.00609,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"55a5af60-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 18ms","method":"POST","requestID":"55a5af60-49d8-11ef-9fe8-9113c2c8d024","responseTime":18,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"55a53a30-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"55a58850-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc54d36f8-9cce-4e6a-8260-3e5dbd13149d#owner@http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc54d36f8-9cce-4e6a-8260-3e5dbd13149d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"9c749b36-d499-497e-b451-9ea17f6bf530","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837897.0770996} device-1 | {"level":"info","message":"GET /devices/de835fec-d024-47bf-bba5-659c354af0c4? 200 33ms","method":"GET","requestID":"55a58850-49d8-11ef-9fe8-9113c2c8d024","responseTime":33,"status":200,"url":"/devices/de835fec-d024-47bf-bba5-659c354af0c4?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6f6d6ec7-36f8-4986-8fc3-40fef0552943","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837897.0776432} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"55a5af60-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"ccdaa81a66e5961f576ab1f323c32b8c","responseTime":25,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"POST /devices/8138a954-0a0b-4596-87d7-8ade8b5a604d/signaling 200 34ms","method":"POST","requestID":"55a5af60-49d8-11ef-9fe8-9113c2c8d024","responseTime":34,"status":200,"url":"/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"55a53a30-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/8138a954-0a0b-4596-87d7-8ade8b5a604d? 200 38ms","method":"GET","requestID":"55a53a30-49d8-11ef-9fe8-9113c2c8d024","responseTime":38,"status":200,"url":"/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"55abc9e0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"55ac1800-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":424,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:17Z"} authorization-1 | {"client_addr":"127.0.0.1:44272","level":"info","msg":"Received request.","req_id":425,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:17Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/c54d36f8-9cce-4e6a-8260-3e5dbd13149d","user":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"ccdaa81a66e5961f576ab1f323c32b8c"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde835fec-d024-47bf-bba5-659c354af0c4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8c6a9254-853f-4320-907a-a74dda3bfb6c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837897.0932584} gateway-1 | {"time_local":"24/Jul/2024:16:18:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1291","request_time":"0.166","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ccdaa81a66e5961f576ab1f323c32b8c"} experiment-1 | {"level":"info","message":"POST /experiments? 201 159ms","method":"POST","requestID":"ccdaa81a66e5961f576ab1f323c32b8c","responseTime":159,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":424,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.623575,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/de835fec-d024-47bf-bba5-659c354af0c4","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"55abc9e0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/de835fec-d024-47bf-bba5-659c354af0c4","object_type":"device","rebac_allow":false,"scope_allow":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":"55abc9e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8138a954-0a0b-4596-87d7-8ade8b5a604d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"870dfbd7-837c-4ac2-93dc-57de12c3c63b","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837897.094305} authorization-1 | {"client_addr":"127.0.0.1:44272","level":"info","msg":"Sent response.","req_id":425,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.254107,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"55ac1800-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d","object_type":"device","rebac_allow":false,"scope_allow":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":"55ac1800-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5N30.dr-BqUJEdJWHO5VzPoVKeGQQY0VUdErukoMn9lbzgRM","level":"info","message":"auth send jwt","requestID":"3334700fa9c12c199f5dd8d83346050f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3334700fa9c12c199f5dd8d83346050f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3334700fa9c12c199f5dd8d83346050f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"55abc9e0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/de835fec-d024-47bf-bba5-659c354af0c4/signaling 200 17ms","method":"POST","requestID":"55abc9e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":17,"status":200,"url":"/devices/de835fec-d024-47bf-bba5-659c354af0c4/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"55ac1800-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":426,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:17Z"} device-1 | {"level":"info","message":"POST /devices/8138a954-0a0b-4596-87d7-8ade8b5a604d/signaling 200 17ms","method":"POST","requestID":"55ac1800-49d8-11ef-9fe8-9113c2c8d024","responseTime":17,"status":200,"url":"/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d/signaling"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":426,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.021849,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3334700fa9c12c199f5dd8d83346050f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837897,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5N30.dr-BqUJEdJWHO5VzPoVKeGQQY0VUdErukoMn9lbzgRM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3334700fa9c12c199f5dd8d83346050f","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"55aefe30-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":427,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:17Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8138a954-0a0b-4596-87d7-8ade8b5a604d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8138a954-0a0b-4596-87d7-8ade8b5a604d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:14.771593660Z"}]},"request_id":"41ef792d-1a1c-430f-b332-c17003374980","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837897.1125805} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde835fec-d024-47bf-bba5-659c354af0c4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"044d18e1-8dea-4442-ad53-c78308d2e2f0","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837897.1127775} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3334700fa9c12c199f5dd8d83346050f","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":427,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.255162,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/de835fec-d024-47bf-bba5-659c354af0c4","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"55aefe30-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/de835fec-d024-47bf-bba5-659c354af0c4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"55aefe30-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3334700fa9c12c199f5dd8d83346050f"} device-1 | {"level":"info","message":"GET /devices/8138a954-0a0b-4596-87d7-8ade8b5a604d? 200 18ms","method":"GET","requestID":"3334700fa9c12c199f5dd8d83346050f","responseTime":18,"status":200,"url":"/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d?"} gateway-1 | {"time_local":"24/Jul/2024:16:18:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8138a954-0a0b-4596-87d7-8ade8b5a604d? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3334700fa9c12c199f5dd8d83346050f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"55aefe30-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/de835fec-d024-47bf-bba5-659c354af0c4/signaling 200 13ms","method":"POST","requestID":"55aefe30-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/devices/de835fec-d024-47bf-bba5-659c354af0c4/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c54d36f8-9cce-4e6a-8260-3e5dbd13149d"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"ccdaa81a66e5961f576ab1f323c32b8c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c54d36f8-9cce-4e6a-8260-3e5dbd13149d"},"level":"info","message":"Building connection plan","requestID":"ccdaa81a66e5961f576ab1f323c32b8c"} 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":"16c5a751-265a-4f16-95ac-e0f4ce4b9dc6"},{"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":"537c3dac-83f5-4bf0-8f7f-c8d5f205967e"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"50bdf4ef-5b01-45c2-8b00-890891cada51"}]},"level":"info","message":"Built pairwise service configurations","requestID":"ccdaa81a66e5961f576ab1f323c32b8c"} experiment-1 | {"data":{"connectionPlan":[{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/de835fec-d024-47bf-bba5-659c354af0c4"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"ccdaa81a66e5961f576ab1f323c32b8c"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"55b16f30-49d8-11ef-9fe8-9113c2c8d024"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5N30.dr-BqUJEdJWHO5VzPoVKeGQQY0VUdErukoMn9lbzgRM","level":"info","message":"auth send jwt","requestID":"7f2c53771a60446ca8d941bae62f40b7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7f2c53771a60446ca8d941bae62f40b7","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7f2c53771a60446ca8d941bae62f40b7"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":428,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:17Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":428,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.98347,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:17Z"} authorization-1 | {"client_addr":"127.0.0.1:44272","level":"info","msg":"Received request.","req_id":429,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:17Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"55b16f30-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837896,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5Nn0.TJLFDskBEjGh60O9f6jAGOLUaToHkGDh-s0raGnc6_I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"55b16f30-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:44272","level":"info","msg":"Sent response.","req_id":429,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.963976,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/de835fec-d024-47bf-bba5-659c354af0c4","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"7f2c53771a60446ca8d941bae62f40b7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/de835fec-d024-47bf-bba5-659c354af0c4","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837897,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5N30.dr-BqUJEdJWHO5VzPoVKeGQQY0VUdErukoMn9lbzgRM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7f2c53771a60446ca8d941bae62f40b7","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde835fec-d024-47bf-bba5-659c354af0c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde835fec-d024-47bf-bba5-659c354af0c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:14.820478347Z"}]},"request_id":"6e0b1750-f487-4a50-85e7-529777efbe80","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837897.1352463} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7f2c53771a60446ca8d941bae62f40b7","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7f2c53771a60446ca8d941bae62f40b7"} gateway-1 | {"time_local":"24/Jul/2024:16:18:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/de835fec-d024-47bf-bba5-659c354af0c4? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7f2c53771a60446ca8d941bae62f40b7"} device-1 | {"level":"info","message":"GET /devices/de835fec-d024-47bf-bba5-659c354af0c4? 200 14ms","method":"GET","requestID":"7f2c53771a60446ca8d941bae62f40b7","responseTime":14,"status":200,"url":"/devices/de835fec-d024-47bf-bba5-659c354af0c4?"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","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%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"679b8673-fac5-43ba-921d-f182257872fc","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837897.141598} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fad1d04f-0141-4845-bd2d-5584d87b9c00","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837897.1420286} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"55b16f30-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"55b16f30-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"55b16f30-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/21f3cc55-98ad-4ba3-a864-21ba80ec5ee9'","requestID":"55b16f30-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/21f3cc55-98ad-4ba3-a864-21ba80ec5ee9'","requestID":"55b16f30-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"55b16f30-49d8-11ef-9fe8-9113c2c8d024"} 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":"55b16f30-49d8-11ef-9fe8-9113c2c8d024","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":"55b16f30-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/21f3cc55-98ad-4ba3-a864-21ba80ec5ee9","device":"8138a954-0a0b-4596-87d7-8ade8b5a604d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c54d36f8-9cce-4e6a-8260-3e5dbd13149d"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"ccdaa81a66e5961f576ab1f323c32b8c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"55bc1d90-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":430,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:17Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8138a954-0a0b-4596-87d7-8ade8b5a604d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7d5b27cd-d736-49b3-b345-1d87db98a063","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837897.198035} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":430,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.84993,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"55bc1d90-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"55bc1d90-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"device":"8138a954-0a0b-4596-87d7-8ade8b5a604d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"8138a954-0a0b-4596-87d7-8ade8b5a604d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"55bc1d90-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/8138a954-0a0b-4596-87d7-8ade8b5a604d/signaling 200 10ms","method":"POST","requestID":"55bc1d90-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"55bdf250-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":431,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:17Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde835fec-d024-47bf-bba5-659c354af0c4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1d2cca7c-87f9-480f-b466-718044358225","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837897.2096827} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":431,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.168548,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/de835fec-d024-47bf-bba5-659c354af0c4","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"55bdf250-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/de835fec-d024-47bf-bba5-659c354af0c4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"55bdf250-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"55bdf250-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/de835fec-d024-47bf-bba5-659c354af0c4/signaling 200 8ms","method":"POST","requestID":"55bdf250-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/devices/de835fec-d024-47bf-bba5-659c354af0c4/signaling"} device-1 | {"device":"de835fec-d024-47bf-bba5-659c354af0c4","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"21f3cc55-98ad-4ba3-a864-21ba80ec5ee9","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 8519199621464902276 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:D6jR\r\na=ice-pwd:FHoyjJFjSFnzB4Q9T8VNwHZx\r\na=ice-options:trickle\r\na=fingerprint:sha-256 56:F7:3F:52:27:0D:40:14:AE:55:5E:7C:A3:53:30:70:D2:EE:6A:29:BD:DF:A3:21:43:0C:28:B3:45:F4:18:7F\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"8138a954-0a0b-4596-87d7-8ade8b5a604d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:2889928542 1 udp 2113937151 bc7bb0e6-e656-4a42-886f-58f8200608f9.local 50165 typ host generation 0 ufrag D6jR network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"8138a954-0a0b-4596-87d7-8ade8b5a604d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"8138a954-0a0b-4596-87d7-8ade8b5a604d","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/21f3cc55-98ad-4ba3-a864-21ba80ec5ee9' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"21f3cc55-98ad-4ba3-a864-21ba80ec5ee9","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"candidate":"candidate:1064005197 1 udp 1677729535 141.24.211.56 50165 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag D6jR network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"8138a954-0a0b-4596-87d7-8ade8b5a604d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"8138a954-0a0b-4596-87d7-8ade8b5a604d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"93667936479f253736cb25f47e93c8ca","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"de835fec-d024-47bf-bba5-659c354af0c4","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"de835fec-d024-47bf-bba5-659c354af0c4","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"de835fec-d024-47bf-bba5-659c354af0c4","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"93667936479f253736cb25f47e93c8ca","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/de835fec-d024-47bf-bba5-659c354af0c4"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/21f3cc55-98ad-4ba3-a864-21ba80ec5ee9"}}},"level":"info","message":"received a callback","requestID":"93667936479f253736cb25f47e93c8ca"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d'"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"93667936479f253736cb25f47e93c8ca","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"93667936479f253736cb25f47e93c8ca"} device-1 | {"data":{"peerconnection":"21f3cc55-98ad-4ba3-a864-21ba80ec5ee9","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"de835fec-d024-47bf-bba5-659c354af0c4","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"8138a954-0a0b-4596-87d7-8ade8b5a604d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"de835fec-d024-47bf-bba5-659c354af0c4","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"21f3cc55-98ad-4ba3-a864-21ba80ec5ee9","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"8138a954-0a0b-4596-87d7-8ade8b5a604d","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/21f3cc55-98ad-4ba3-a864-21ba80ec5ee9' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"21f3cc55-98ad-4ba3-a864-21ba80ec5ee9","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a3b19816bccb22d9f23725986b9d5fb4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"a3b19816bccb22d9f23725986b9d5fb4","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/de835fec-d024-47bf-bba5-659c354af0c4"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/21f3cc55-98ad-4ba3-a864-21ba80ec5ee9"}}},"level":"info","message":"received a callback","requestID":"a3b19816bccb22d9f23725986b9d5fb4"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"570602b0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":432,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:19Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F21f3cc55-98ad-4ba3-a864-21ba80ec5ee9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9a38708d-827a-42b1-b082-bf4fab28d272","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837899.362141} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":432,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":4.634289,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/21f3cc55-98ad-4ba3-a864-21ba80ec5ee9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"570602b0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/21f3cc55-98ad-4ba3-a864-21ba80ec5ee9","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":"570602b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"570602b0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /peerconnections/21f3cc55-98ad-4ba3-a864-21ba80ec5ee9 200 13ms","method":"GET","requestID":"570602b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/peerconnections/21f3cc55-98ad-4ba3-a864-21ba80ec5ee9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 44ms","method":"POST","requestID":"a3b19816bccb22d9f23725986b9d5fb4","responseTime":44,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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.049","http_referrer":"","http_user_agent":"node-fetch","requestID":"a3b19816bccb22d9f23725986b9d5fb4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"570ba800-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":433,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:19Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8138a954-0a0b-4596-87d7-8ade8b5a604d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"27b85737-d0b3-425f-bb24-426512313177","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837899.3979974} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":433,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.114261,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"570ba800-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d","object_type":"device","rebac_allow":false,"scope_allow":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":"570ba800-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"570ba800-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/8138a954-0a0b-4596-87d7-8ade8b5a604d/signaling 200 10ms","method":"POST","requestID":"570ba800-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"570da3d0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":434,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:19Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde835fec-d024-47bf-bba5-659c354af0c4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4a0a61c4-4e32-43cb-9906-51ef8168760a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837899.4105413} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":434,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.971215,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/de835fec-d024-47bf-bba5-659c354af0c4","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"570da3d0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/de835fec-d024-47bf-bba5-659c354af0c4","object_type":"device","rebac_allow":false,"scope_allow":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":"570da3d0-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"570da3d0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/de835fec-d024-47bf-bba5-659c354af0c4/signaling 200 10ms","method":"POST","requestID":"570da3d0-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/devices/de835fec-d024-47bf-bba5-659c354af0c4/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5OX0.4xlwaiSSAP0T_iYh4kmzfYyV8ElWGep1XEsstQqWlFk","level":"info","message":"auth send jwt","requestID":"a7cf37e35a170ad52d28d868cf54f9ca"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a7cf37e35a170ad52d28d868cf54f9ca","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/c54d36f8-9cce-4e6a-8260-3e5dbd13149d","requestID":"a7cf37e35a170ad52d28d868cf54f9ca"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":435,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:19Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":435,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.610724,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c54d36f8-9cce-4e6a-8260-3e5dbd13149d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"a7cf37e35a170ad52d28d868cf54f9ca","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/c54d36f8-9cce-4e6a-8260-3e5dbd13149d","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837899,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5OX0.4xlwaiSSAP0T_iYh4kmzfYyV8ElWGep1XEsstQqWlFk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a7cf37e35a170ad52d28d868cf54f9ca","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/c54d36f8-9cce-4e6a-8260-3e5dbd13149d","requestID":"a7cf37e35a170ad52d28d868cf54f9ca"} experiment-1 | {"level":"info","message":"GET /experiments/c54d36f8-9cce-4e6a-8260-3e5dbd13149d 200 10ms","method":"GET","requestID":"a7cf37e35a170ad52d28d868cf54f9ca","responseTime":10,"status":200,"url":"/experiments/c54d36f8-9cce-4e6a-8260-3e5dbd13149d"} gateway-1 | {"time_local":"24/Jul/2024:16:18:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/c54d36f8-9cce-4e6a-8260-3e5dbd13149d HTTP/1.1","status": "200","body_bytes_sent":"1364","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a7cf37e35a170ad52d28d868cf54f9ca"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5OX0.4xlwaiSSAP0T_iYh4kmzfYyV8ElWGep1XEsstQqWlFk","level":"info","message":"auth send jwt","requestID":"de167d85f17749b86baa813002b2b850"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"de167d85f17749b86baa813002b2b850","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/c54d36f8-9cce-4e6a-8260-3e5dbd13149d","requestID":"de167d85f17749b86baa813002b2b850"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":436,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:19Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":436,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.106045,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:19Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c54d36f8-9cce-4e6a-8260-3e5dbd13149d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"de167d85f17749b86baa813002b2b850","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/c54d36f8-9cce-4e6a-8260-3e5dbd13149d","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837899,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5OX0.4xlwaiSSAP0T_iYh4kmzfYyV8ElWGep1XEsstQqWlFk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"de167d85f17749b86baa813002b2b850","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c54d36f8-9cce-4e6a-8260-3e5dbd13149d"},"level":"info","message":"Attempting to finish experiment","requestID":"de167d85f17749b86baa813002b2b850"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"5718ee70-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":437,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:19Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":437,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.178447,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:19Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/21f3cc55-98ad-4ba3-a864-21ba80ec5ee9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5718ee70-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:http://localhost/peerconnections/21f3cc55-98ad-4ba3-a864-21ba80ec5ee9","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837899,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5OX0.4xlwaiSSAP0T_iYh4kmzfYyV8ElWGep1XEsstQqWlFk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5718ee70-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/21f3cc55-98ad-4ba3-a864-21ba80ec5ee9","device":"8138a954-0a0b-4596-87d7-8ade8b5a604d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"de835fec-d024-47bf-bba5-659c354af0c4","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"de835fec-d024-47bf-bba5-659c354af0c4","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"de835fec-d024-47bf-bba5-659c354af0c4","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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/21f3cc55-98ad-4ba3-a864-21ba80ec5ee9' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/21f3cc55-98ad-4ba3-a864-21ba80ec5ee9' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"21f3cc55-98ad-4ba3-a864-21ba80ec5ee9","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F21f3cc55-98ad-4ba3-a864-21ba80ec5ee9': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F21f3cc55-98ad-4ba3-a864-21ba80ec5ee9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"e771c716-d0b1-47c9-958b-3519774a8f59","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837899.4998782} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"14b247fc-2f53-4f6d-a080-b412ad886b42","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837899.5003748} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"5718ee70-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c57c7fc234dc7a12cc7d18915d84e5b8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"c57c7fc234dc7a12cc7d18915d84e5b8","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"74cc106939e5abf3d08999fcf9b958ee","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/de835fec-d024-47bf-bba5-659c354af0c4"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/21f3cc55-98ad-4ba3-a864-21ba80ec5ee9"}}},"level":"info","message":"received a callback","requestID":"c57c7fc234dc7a12cc7d18915d84e5b8"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"74cc106939e5abf3d08999fcf9b958ee","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/de835fec-d024-47bf-bba5-659c354af0c4"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/21f3cc55-98ad-4ba3-a864-21ba80ec5ee9"}}},"level":"info","message":"received a callback","requestID":"74cc106939e5abf3d08999fcf9b958ee"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"5718ee70-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"DELETE /peerconnections/21f3cc55-98ad-4ba3-a864-21ba80ec5ee9 204 36ms","method":"DELETE","requestID":"5718ee70-49d8-11ef-9fe8-9113c2c8d024","responseTime":36,"status":204,"url":"/peerconnections/21f3cc55-98ad-4ba3-a864-21ba80ec5ee9"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c54d36f8-9cce-4e6a-8260-3e5dbd13149d"},"level":"info","message":"Successfully finished experiment","requestID":"de167d85f17749b86baa813002b2b850"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"572179f0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":438,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:19Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8138a954-0a0b-4596-87d7-8ade8b5a604d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f217c3ff-7b2c-402b-8ee6-2322a6b80f6c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837899.5431633} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":438,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.708808,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"572179f0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d","object_type":"device","rebac_allow":false,"scope_allow":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":"572179f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"572179f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/8138a954-0a0b-4596-87d7-8ade8b5a604d/signaling 200 15ms","method":"POST","requestID":"572179f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":15,"status":200,"url":"/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d/signaling"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc54d36f8-9cce-4e6a-8260-3e5dbd13149d': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc54d36f8-9cce-4e6a-8260-3e5dbd13149d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"8b31516e-d302-41f9-bb1e-cf34d1b76a34","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837899.5508392} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d9435625-e310-4f84-b30f-61969dc0ef9f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837899.5510254} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"de167d85f17749b86baa813002b2b850","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"57243910-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":439,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:19Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde835fec-d024-47bf-bba5-659c354af0c4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"82686eb2-9f16-4177-9c80-9ff4b2ba7eee","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837899.5606458} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":439,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.456385,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/de835fec-d024-47bf-bba5-659c354af0c4","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"57243910-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/de835fec-d024-47bf-bba5-659c354af0c4","object_type":"device","rebac_allow":false,"scope_allow":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":"57243910-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"57243910-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/de835fec-d024-47bf-bba5-659c354af0c4/signaling 200 15ms","method":"POST","requestID":"57243910-49d8-11ef-9fe8-9113c2c8d024","responseTime":15,"status":200,"url":"/devices/de835fec-d024-47bf-bba5-659c354af0c4/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/c54d36f8-9cce-4e6a-8260-3e5dbd13149d","requestID":"de167d85f17749b86baa813002b2b850"} gateway-1 | {"time_local":"24/Jul/2024:16:18:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/c54d36f8-9cce-4e6a-8260-3e5dbd13149d 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":"de167d85f17749b86baa813002b2b850"} experiment-1 | {"level":"info","message":"DELETE /experiments/c54d36f8-9cce-4e6a-8260-3e5dbd13149d 204 157ms","method":"DELETE","requestID":"de167d85f17749b86baa813002b2b850","responseTime":157,"status":204,"url":"/experiments/c54d36f8-9cce-4e6a-8260-3e5dbd13149d"} gateway-1 | {"time_local":"24/Jul/2024:16:18:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2837","request_time":"4.242","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"9440d78c57582cc90619f9c52e12338d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 121ms","method":"POST","requestID":"c57c7fc234dc7a12cc7d18915d84e5b8","responseTime":121,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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.125","http_referrer":"","http_user_agent":"node-fetch","requestID":"c57c7fc234dc7a12cc7d18915d84e5b8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 121ms","method":"POST","requestID":"74cc106939e5abf3d08999fcf9b958ee","responseTime":121,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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":"74cc106939e5abf3d08999fcf9b958ee"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5OX0.4xlwaiSSAP0T_iYh4kmzfYyV8ElWGep1XEsstQqWlFk","level":"info","message":"auth send jwt","requestID":"cac6cb6d3852c71b8352713303020e24"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"cac6cb6d3852c71b8352713303020e24","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"cac6cb6d3852c71b8352713303020e24"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":440,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:19Z"} gateway-1 | {"time_local":"24/Jul/2024:16:18:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2747","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":"25dc361f8a326e02663ba0db33ad78c5"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":440,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.125069,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:19Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"cac6cb6d3852c71b8352713303020e24","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837899,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5OX0.4xlwaiSSAP0T_iYh4kmzfYyV8ElWGep1XEsstQqWlFk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cac6cb6d3852c71b8352713303020e24","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/de835fec-d024-47bf-bba5-659c354af0c4' 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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09d204dc-7041-4c2b-b936-c229821c42dd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0a96ff4e-53ed-4669-a76b-caf42c7b037e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837899.656807} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cac6cb6d3852c71b8352713303020e24","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"83029f2c-a4a1-427f-9281-a7dbb11d3237","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837899.6627595} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/8138a954-0a0b-4596-87d7-8ade8b5a604d' closed"} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"cac6cb6d3852c71b8352713303020e24","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09d204dc-7041-4c2b-b936-c229821c42dd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"a287f82a-2b6e-4b59-80a5-43fd9da4650d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837899.6743848} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8666f32f-40cb-4ffb-b730-f7e83542d212","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837899.6759522} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"cac6cb6d3852c71b8352713303020e24","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09d204dc-7041-4c2b-b936-c229821c42dd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09d204dc-7041-4c2b-b936-c229821c42dd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:19.674356824Z"}]},"request_id":"eb30bd73-5501-4411-97a6-5f3fa107ba62","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837899.6872714} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cac6cb6d3852c71b8352713303020e24","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"cac6cb6d3852c71b8352713303020e24"} gateway-1 | {"time_local":"24/Jul/2024:16:18:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.064","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cac6cb6d3852c71b8352713303020e24"} device-1 | {"level":"info","message":"POST /devices? 201 58ms","method":"POST","requestID":"cac6cb6d3852c71b8352713303020e24","responseTime":58,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5OX0.4xlwaiSSAP0T_iYh4kmzfYyV8ElWGep1XEsstQqWlFk","level":"info","message":"auth send jwt","requestID":"669484797e9e49619c22f32d4c2014a7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"669484797e9e49619c22f32d4c2014a7","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"669484797e9e49619c22f32d4c2014a7"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":441,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:19Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":441,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.658027,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:19Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"669484797e9e49619c22f32d4c2014a7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837899,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzg5OX0.4xlwaiSSAP0T_iYh4kmzfYyV8ElWGep1XEsstQqWlFk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"669484797e9e49619c22f32d4c2014a7","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb7de176-8e61-43ce-8492-86be50b90056","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2455a1c7-1081-4f60-8692-2cb8f42bff5b","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837899.7109654} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"669484797e9e49619c22f32d4c2014a7","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a6fc7986-3bea-46f4-82cf-45afae97ac6d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837899.7161646} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"669484797e9e49619c22f32d4c2014a7","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb7de176-8e61-43ce-8492-86be50b90056","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"f1d80cae-4430-4f2f-9f8f-4477180e91a4","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837899.7322738} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9df76c7d-90e0-40b6-87f5-3ca3a52d497c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837899.7324433} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"669484797e9e49619c22f32d4c2014a7","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb7de176-8e61-43ce-8492-86be50b90056","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb7de176-8e61-43ce-8492-86be50b90056","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:19.732246775Z"}]},"request_id":"9d35fe59-2c2f-4915-b844-5c9aaf9108b6","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837899.7358413} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"669484797e9e49619c22f32d4c2014a7","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"669484797e9e49619c22f32d4c2014a7"} gateway-1 | {"time_local":"24/Jul/2024:16:18:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"669484797e9e49619c22f32d4c2014a7"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"669484797e9e49619c22f32d4c2014a7","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwMH0.mBgTprYt-JCBehxEw0DdyXGjE5f5ozAyAwJ7amXyAa8","level":"info","message":"auth send jwt","requestID":"a24a59ba88b0897d72994415c50f62fc"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a24a59ba88b0897d72994415c50f62fc","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"a24a59ba88b0897d72994415c50f62fc"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":442,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:20Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":442,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.917797,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:20Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/09d204dc-7041-4c2b-b936-c229821c42dd","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"a24a59ba88b0897d72994415c50f62fc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/09d204dc-7041-4c2b-b936-c229821c42dd","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837900,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwMH0.mBgTprYt-JCBehxEw0DdyXGjE5f5ozAyAwJ7amXyAa8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a24a59ba88b0897d72994415c50f62fc","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09d204dc-7041-4c2b-b936-c229821c42dd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09d204dc-7041-4c2b-b936-c229821c42dd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:19.674356824Z"}]},"request_id":"2d2fa14c-b318-4bce-9593-65315eaf1ced","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837900.2353845} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"a24a59ba88b0897d72994415c50f62fc","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ee50b09a-e351-43b0-a314-9892df21240b","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837900.24375} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"a24a59ba88b0897d72994415c50f62fc","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09d204dc-7041-4c2b-b936-c229821c42dd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09d204dc-7041-4c2b-b936-c229821c42dd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:19.674356824Z"}]},"request_id":"8e78eb0e-8463-4d31-85ba-49410c9f1759","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837900.256529} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"a24a59ba88b0897d72994415c50f62fc","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"a24a59ba88b0897d72994415c50f62fc"} device-1 | {"level":"info","message":"PATCH /devices/09d204dc-7041-4c2b-b936-c229821c42dd 200 41ms","method":"PATCH","requestID":"a24a59ba88b0897d72994415c50f62fc","responseTime":41,"status":200,"url":"/devices/09d204dc-7041-4c2b-b936-c229821c42dd"} gateway-1 | {"time_local":"24/Jul/2024:16:18:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/09d204dc-7041-4c2b-b936-c229821c42dd HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.048","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"a24a59ba88b0897d72994415c50f62fc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwMH0.mBgTprYt-JCBehxEw0DdyXGjE5f5ozAyAwJ7amXyAa8","level":"info","message":"auth send jwt","requestID":"4cdf213b138eaff47646a7932a313d96"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"4cdf213b138eaff47646a7932a313d96","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"4cdf213b138eaff47646a7932a313d96"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":443,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:20Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":443,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.276441,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:20Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/09d204dc-7041-4c2b-b936-c229821c42dd","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4cdf213b138eaff47646a7932a313d96","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/09d204dc-7041-4c2b-b936-c229821c42dd","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837900,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwMH0.mBgTprYt-JCBehxEw0DdyXGjE5f5ozAyAwJ7amXyAa8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4cdf213b138eaff47646a7932a313d96","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"4cdf213b138eaff47646a7932a313d96"} gateway-1 | {"time_local":"24/Jul/2024:16:18:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/09d204dc-7041-4c2b-b936-c229821c42dd/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"4cdf213b138eaff47646a7932a313d96"} device-1 | {"level":"info","message":"POST /devices/09d204dc-7041-4c2b-b936-c229821c42dd/websocket 200 19ms","method":"POST","requestID":"4cdf213b138eaff47646a7932a313d96","responseTime":19,"status":200,"url":"/devices/09d204dc-7041-4c2b-b936-c229821c42dd/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/09d204dc-7041-4c2b-b936-c229821c42dd' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c2312ba3c6ebafd7a6ac78279ed0a1ec","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"c2312ba3c6ebafd7a6ac78279ed0a1ec","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Jul/2024:16:18:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/eb7de176-8e61-43ce-8492-86be50b90056/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":"c2312ba3c6ebafd7a6ac78279ed0a1ec"} device-1 | {"level":"info","message":"OPTIONS /devices/eb7de176-8e61-43ce-8492-86be50b90056/websocket 200 1ms","method":"OPTIONS","requestID":"c2312ba3c6ebafd7a6ac78279ed0a1ec","responseTime":1,"status":200,"url":"/devices/eb7de176-8e61-43ce-8492-86be50b90056/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwMX0.NRYytS4UWdG9y1cROx4r1_8Fmv3ABsha0kg0jItjIV0","level":"info","message":"auth send jwt","requestID":"3d5343ee2eaa09f94572668234eb1005"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"3d5343ee2eaa09f94572668234eb1005","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"3d5343ee2eaa09f94572668234eb1005"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":444,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:21Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":444,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.595044,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:21Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb7de176-8e61-43ce-8492-86be50b90056","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3d5343ee2eaa09f94572668234eb1005","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/eb7de176-8e61-43ce-8492-86be50b90056","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837901,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwMX0.NRYytS4UWdG9y1cROx4r1_8Fmv3ABsha0kg0jItjIV0"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"3d5343ee2eaa09f94572668234eb1005","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"3d5343ee2eaa09f94572668234eb1005"} gateway-1 | {"time_local":"24/Jul/2024:16:18:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/eb7de176-8e61-43ce-8492-86be50b90056/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":"3d5343ee2eaa09f94572668234eb1005"} device-1 | {"level":"info","message":"POST /devices/eb7de176-8e61-43ce-8492-86be50b90056/websocket 200 23ms","method":"POST","requestID":"3d5343ee2eaa09f94572668234eb1005","responseTime":23,"status":200,"url":"/devices/eb7de176-8e61-43ce-8492-86be50b90056/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/eb7de176-8e61-43ce-8492-86be50b90056' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwMX0.NRYytS4UWdG9y1cROx4r1_8Fmv3ABsha0kg0jItjIV0","level":"info","message":"auth send jwt","requestID":"4466bf773136f314d59a563d94f6f1c5"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"4466bf773136f314d59a563d94f6f1c5","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4466bf773136f314d59a563d94f6f1c5"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":445,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:21Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":445,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.378934,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/09d204dc-7041-4c2b-b936-c229821c42dd","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4466bf773136f314d59a563d94f6f1c5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/09d204dc-7041-4c2b-b936-c229821c42dd","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837901,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwMX0.NRYytS4UWdG9y1cROx4r1_8Fmv3ABsha0kg0jItjIV0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4466bf773136f314d59a563d94f6f1c5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09d204dc-7041-4c2b-b936-c229821c42dd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09d204dc-7041-4c2b-b936-c229821c42dd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:19.674356824Z"}]},"request_id":"7cfee844-9016-4db0-84fb-7a4d681b8af5","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837901.8180356} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4466bf773136f314d59a563d94f6f1c5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4466bf773136f314d59a563d94f6f1c5"} device-1 | {"level":"info","message":"GET /devices/09d204dc-7041-4c2b-b936-c229821c42dd? 200 17ms","method":"GET","requestID":"4466bf773136f314d59a563d94f6f1c5","responseTime":17,"status":200,"url":"/devices/09d204dc-7041-4c2b-b936-c229821c42dd?"} gateway-1 | {"time_local":"24/Jul/2024:16:18:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/09d204dc-7041-4c2b-b936-c229821c42dd? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4466bf773136f314d59a563d94f6f1c5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwMX0.NRYytS4UWdG9y1cROx4r1_8Fmv3ABsha0kg0jItjIV0","level":"info","message":"auth send jwt","requestID":"35fe9cf4a95f7347b64fdbec75b02f30"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"35fe9cf4a95f7347b64fdbec75b02f30","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"35fe9cf4a95f7347b64fdbec75b02f30"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":446,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:21Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":446,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.129188,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb7de176-8e61-43ce-8492-86be50b90056","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"35fe9cf4a95f7347b64fdbec75b02f30","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/eb7de176-8e61-43ce-8492-86be50b90056","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837901,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwMX0.NRYytS4UWdG9y1cROx4r1_8Fmv3ABsha0kg0jItjIV0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"35fe9cf4a95f7347b64fdbec75b02f30","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb7de176-8e61-43ce-8492-86be50b90056","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb7de176-8e61-43ce-8492-86be50b90056","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:19.732246775Z"}]},"request_id":"47f6b05e-d7c8-4e51-8b99-0ef07868cd8a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837901.8440535} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"35fe9cf4a95f7347b64fdbec75b02f30","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"35fe9cf4a95f7347b64fdbec75b02f30"} gateway-1 | {"time_local":"24/Jul/2024:16:18:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/eb7de176-8e61-43ce-8492-86be50b90056? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"35fe9cf4a95f7347b64fdbec75b02f30"} device-1 | {"level":"info","message":"GET /devices/eb7de176-8e61-43ce-8492-86be50b90056? 200 18ms","method":"GET","requestID":"35fe9cf4a95f7347b64fdbec75b02f30","responseTime":18,"status":200,"url":"/devices/eb7de176-8e61-43ce-8492-86be50b90056?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwMX0.NRYytS4UWdG9y1cROx4r1_8Fmv3ABsha0kg0jItjIV0","level":"info","message":"auth send jwt","requestID":"8e3f0f5cf813b15f1e8f08c9a51dd764"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8e3f0f5cf813b15f1e8f08c9a51dd764","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"8e3f0f5cf813b15f1e8f08c9a51dd764"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":447,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:21Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":447,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.28227,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:21Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"8e3f0f5cf813b15f1e8f08c9a51dd764","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837901,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwMX0.NRYytS4UWdG9y1cROx4r1_8Fmv3ABsha0kg0jItjIV0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8e3f0f5cf813b15f1e8f08c9a51dd764","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/10545f61-26d7-4ef2-8931-7a7cd7989408"},"level":"info","message":"Attempting to run experiment","requestID":"8e3f0f5cf813b15f1e8f08c9a51dd764"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/10545f61-26d7-4ef2-8931-7a7cd7989408"},"level":"info","message":"Attempting to book experiment","requestID":"8e3f0f5cf813b15f1e8f08c9a51dd764"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/10545f61-26d7-4ef2-8931-7a7cd7989408"},"level":"info","message":"Successfully booked experiment","requestID":"8e3f0f5cf813b15f1e8f08c9a51dd764"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"588acdf0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"588af500-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":448,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:21Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":448,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.772072,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/09d204dc-7041-4c2b-b936-c229821c42dd","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"588acdf0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/09d204dc-7041-4c2b-b936-c229821c42dd","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837901,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwMX0.NRYytS4UWdG9y1cROx4r1_8Fmv3ABsha0kg0jItjIV0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"588acdf0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58252","level":"info","msg":"Received request.","req_id":449,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58252","level":"info","msg":"Sent response.","req_id":449,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.791417,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb7de176-8e61-43ce-8492-86be50b90056","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"588af500-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/eb7de176-8e61-43ce-8492-86be50b90056","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837901,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwMX0.NRYytS4UWdG9y1cROx4r1_8Fmv3ABsha0kg0jItjIV0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"588af500-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09d204dc-7041-4c2b-b936-c229821c42dd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09d204dc-7041-4c2b-b936-c229821c42dd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:19.674356824Z"}]},"request_id":"380319d6-16f7-4358-9aa7-52e4995bc911","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837901.9137552} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"588acdf0-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb7de176-8e61-43ce-8492-86be50b90056","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb7de176-8e61-43ce-8492-86be50b90056","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:19.732246775Z"}]},"request_id":"190a633f-28dd-4d6b-8580-d59c1e0c8879","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837901.9154217} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"588af500-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"588acdf0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/09d204dc-7041-4c2b-b936-c229821c42dd? 200 18ms","method":"GET","requestID":"588acdf0-49d8-11ef-9fe8-9113c2c8d024","responseTime":18,"status":200,"url":"/devices/09d204dc-7041-4c2b-b936-c229821c42dd?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"588af500-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/eb7de176-8e61-43ce-8492-86be50b90056? 200 18ms","method":"GET","requestID":"588af500-49d8-11ef-9fe8-9113c2c8d024","responseTime":18,"status":200,"url":"/devices/eb7de176-8e61-43ce-8492-86be50b90056?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/10545f61-26d7-4ef2-8931-7a7cd7989408"},"level":"info","message":"Setting up experiment","requestID":"8e3f0f5cf813b15f1e8f08c9a51dd764"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/10545f61-26d7-4ef2-8931-7a7cd7989408"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"8e3f0f5cf813b15f1e8f08c9a51dd764"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/10545f61-26d7-4ef2-8931-7a7cd7989408"},"level":"info","message":"Successfully locked booking for experiment","requestID":"8e3f0f5cf813b15f1e8f08c9a51dd764"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/10545f61-26d7-4ef2-8931-7a7cd7989408"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"8e3f0f5cf813b15f1e8f08c9a51dd764"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/10545f61-26d7-4ef2-8931-7a7cd7989408"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"8e3f0f5cf813b15f1e8f08c9a51dd764"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/10545f61-26d7-4ef2-8931-7a7cd7989408"},"level":"info","message":"Attempting to update booking for experiment","requestID":"8e3f0f5cf813b15f1e8f08c9a51dd764"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/10545f61-26d7-4ef2-8931-7a7cd7989408"},"level":"info","message":"Successfully updated booking for experiment","requestID":"8e3f0f5cf813b15f1e8f08c9a51dd764"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/10545f61-26d7-4ef2-8931-7a7cd7989408"},"level":"info","message":"Successfully set up experiment","requestID":"8e3f0f5cf813b15f1e8f08c9a51dd764"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"58946ae0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"589491f0-49d8-11ef-9fe8-9113c2c8d024"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/10545f61-26d7-4ef2-8931-7a7cd7989408"},"level":"info","message":"Successfully running experiment","requestID":"8e3f0f5cf813b15f1e8f08c9a51dd764"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5894e010-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":450,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:21Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":450,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.784845,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58252","level":"info","msg":"Received request.","req_id":451,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/09d204dc-7041-4c2b-b936-c229821c42dd","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"58946ae0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/09d204dc-7041-4c2b-b936-c229821c42dd","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837901,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwMX0.NRYytS4UWdG9y1cROx4r1_8Fmv3ABsha0kg0jItjIV0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"58946ae0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58252","level":"info","msg":"Sent response.","req_id":451,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.665615,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb7de176-8e61-43ce-8492-86be50b90056","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"589491f0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/eb7de176-8e61-43ce-8492-86be50b90056","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837901,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwMX0.NRYytS4UWdG9y1cROx4r1_8Fmv3ABsha0kg0jItjIV0"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"589491f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58264","level":"info","msg":"Received request.","req_id":452,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58264","level":"info","msg":"Sent response.","req_id":452,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.746866,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:21Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09d204dc-7041-4c2b-b936-c229821c42dd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09d204dc-7041-4c2b-b936-c229821c42dd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:19.674356824Z"}]},"request_id":"cf46c005-0660-4df1-b56d-c4c95273db15","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837901.9810245} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09d204dc-7041-4c2b-b936-c229821c42dd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7abad796-ee91-470b-a108-15c222266689","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837901.9811528} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"58946ae0-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb7de176-8e61-43ce-8492-86be50b90056","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb7de176-8e61-43ce-8492-86be50b90056","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:19.732246775Z"}]},"request_id":"3146c7fa-48bd-4b50-9dc1-8c2cc1ca6b89","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837901.9824464} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/09d204dc-7041-4c2b-b936-c229821c42dd","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5894e010-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/09d204dc-7041-4c2b-b936-c229821c42dd","object_type":"device","rebac_allow":false,"scope_allow":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":"5894e010-49d8-11ef-9fe8-9113c2c8d024","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"589491f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"58946ae0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/09d204dc-7041-4c2b-b936-c229821c42dd? 200 25ms","method":"GET","requestID":"58946ae0-49d8-11ef-9fe8-9113c2c8d024","responseTime":25,"status":200,"url":"/devices/09d204dc-7041-4c2b-b936-c229821c42dd?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5894e010-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/09d204dc-7041-4c2b-b936-c229821c42dd/signaling 200 25ms","method":"POST","requestID":"5894e010-49d8-11ef-9fe8-9113c2c8d024","responseTime":25,"status":200,"url":"/devices/09d204dc-7041-4c2b-b936-c229821c42dd/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"589491f0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F10545f61-26d7-4ef2-8931-7a7cd7989408#owner@http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F10545f61-26d7-4ef2-8931-7a7cd7989408","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"7e17d06f-dd3d-40ef-aedc-2855f5eb3dec","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837901.9944868} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5be6c9c6-d066-4d1f-b8f7-1e97a354b1cc","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837901.9948213} device-1 | {"level":"info","message":"GET /devices/eb7de176-8e61-43ce-8492-86be50b90056? 200 28ms","method":"GET","requestID":"589491f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":28,"status":200,"url":"/devices/eb7de176-8e61-43ce-8492-86be50b90056?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5898fec0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"8e3f0f5cf813b15f1e8f08c9a51dd764","responseTime":24,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"589925d0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":453,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58252","level":"info","msg":"Received request.","req_id":454,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:21Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb7de176-8e61-43ce-8492-86be50b90056","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a26d9b57-d9b1-41d9-a7b1-eea91c78903f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837902.001706} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":453,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.174982,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb7de176-8e61-43ce-8492-86be50b90056","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5898fec0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/eb7de176-8e61-43ce-8492-86be50b90056","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/10545f61-26d7-4ef2-8931-7a7cd7989408","user":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"8e3f0f5cf813b15f1e8f08c9a51dd764"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5898fec0-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09d204dc-7041-4c2b-b936-c229821c42dd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ffff8126-07e2-4204-9d95-74e57fc0c6e5","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837902.0033138} authorization-1 | {"client_addr":"127.0.0.1:58252","level":"info","msg":"Sent response.","req_id":454,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.84069,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:22Z"} gateway-1 | {"time_local":"24/Jul/2024:16:18:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1291","request_time":"0.152","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8e3f0f5cf813b15f1e8f08c9a51dd764"} experiment-1 | {"level":"info","message":"POST /experiments? 201 145ms","method":"POST","requestID":"8e3f0f5cf813b15f1e8f08c9a51dd764","responseTime":145,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/09d204dc-7041-4c2b-b936-c229821c42dd","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"589925d0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/09d204dc-7041-4c2b-b936-c229821c42dd","object_type":"device","rebac_allow":false,"scope_allow":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":"589925d0-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5898fec0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/eb7de176-8e61-43ce-8492-86be50b90056/signaling 200 13ms","method":"POST","requestID":"5898fec0-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/devices/eb7de176-8e61-43ce-8492-86be50b90056/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"589925d0-49d8-11ef-9fe8-9113c2c8d024"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwMn0.Z0CJDem1fMD6R1-d654lFnenTTtVkvvXF6Imn0jq_YM","level":"info","message":"auth send jwt","requestID":"595aa78e94dd5e3e9b1784e784dbf78a"} device-1 | {"level":"info","message":"POST /devices/09d204dc-7041-4c2b-b936-c229821c42dd/signaling 200 13ms","method":"POST","requestID":"589925d0-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/devices/09d204dc-7041-4c2b-b936-c229821c42dd/signaling"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"595aa78e94dd5e3e9b1784e784dbf78a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"595aa78e94dd5e3e9b1784e784dbf78a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"589b6fc0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":455,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:22Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":455,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.669541,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:22Z"} authorization-1 | {"client_addr":"127.0.0.1:58252","level":"info","msg":"Received request.","req_id":456,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/09d204dc-7041-4c2b-b936-c229821c42dd","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"595aa78e94dd5e3e9b1784e784dbf78a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/09d204dc-7041-4c2b-b936-c229821c42dd","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837902,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwMn0.Z0CJDem1fMD6R1-d654lFnenTTtVkvvXF6Imn0jq_YM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"595aa78e94dd5e3e9b1784e784dbf78a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb7de176-8e61-43ce-8492-86be50b90056","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1762c631-a54d-43ef-81cc-8dda1116ea2c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837902.0166664} authorization-1 | {"client_addr":"127.0.0.1:58252","level":"info","msg":"Sent response.","req_id":456,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.610209,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb7de176-8e61-43ce-8492-86be50b90056","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"589b6fc0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/eb7de176-8e61-43ce-8492-86be50b90056","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"589b6fc0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"589b6fc0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09d204dc-7041-4c2b-b936-c229821c42dd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09d204dc-7041-4c2b-b936-c229821c42dd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:19.674356824Z"}]},"request_id":"1664f447-9407-4473-ad44-9ed07ed6b390","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837902.020743} device-1 | {"level":"info","message":"POST /devices/eb7de176-8e61-43ce-8492-86be50b90056/signaling 200 9ms","method":"POST","requestID":"589b6fc0-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/devices/eb7de176-8e61-43ce-8492-86be50b90056/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"595aa78e94dd5e3e9b1784e784dbf78a","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/10545f61-26d7-4ef2-8931-7a7cd7989408"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"8e3f0f5cf813b15f1e8f08c9a51dd764"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/10545f61-26d7-4ef2-8931-7a7cd7989408"},"level":"info","message":"Building connection plan","requestID":"8e3f0f5cf813b15f1e8f08c9a51dd764"} 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":"cbc3087b-488c-4edd-a6ca-0438048c445b"},{"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":"621b0153-5a0f-4eab-80b4-48d671afb698"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"d9abee7d-675f-4339-9507-321916ce9ce6"}]},"level":"info","message":"Built pairwise service configurations","requestID":"8e3f0f5cf813b15f1e8f08c9a51dd764"} experiment-1 | {"data":{"connectionPlan":[{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/eb7de176-8e61-43ce-8492-86be50b90056"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/09d204dc-7041-4c2b-b936-c229821c42dd"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"8e3f0f5cf813b15f1e8f08c9a51dd764"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"589d4480-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"595aa78e94dd5e3e9b1784e784dbf78a"} gateway-1 | {"time_local":"24/Jul/2024:16:18:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/09d204dc-7041-4c2b-b936-c229821c42dd? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"595aa78e94dd5e3e9b1784e784dbf78a"} device-1 | {"level":"info","message":"GET /devices/09d204dc-7041-4c2b-b936-c229821c42dd? 200 15ms","method":"GET","requestID":"595aa78e94dd5e3e9b1784e784dbf78a","responseTime":15,"status":200,"url":"/devices/09d204dc-7041-4c2b-b936-c229821c42dd?"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":457,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:22Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":457,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.67611,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"589d4480-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837901,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwMX0.NRYytS4UWdG9y1cROx4r1_8Fmv3ABsha0kg0jItjIV0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"589d4480-49d8-11ef-9fe8-9113c2c8d024","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwMn0.Z0CJDem1fMD6R1-d654lFnenTTtVkvvXF6Imn0jq_YM","level":"info","message":"auth send jwt","requestID":"5360604d6edfa0cc726b9a16ddb4cf21"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5360604d6edfa0cc726b9a16ddb4cf21","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5360604d6edfa0cc726b9a16ddb4cf21"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":458,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:22Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":458,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.661591,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb7de176-8e61-43ce-8492-86be50b90056","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5360604d6edfa0cc726b9a16ddb4cf21","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/eb7de176-8e61-43ce-8492-86be50b90056","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837902,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwMn0.Z0CJDem1fMD6R1-d654lFnenTTtVkvvXF6Imn0jq_YM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5360604d6edfa0cc726b9a16ddb4cf21","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","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%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"47d3cc4e-1ebe-47d9-8c2c-3b1e3d8e75fb","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837902.0387156} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cfd42ef4-f940-46d1-abb4-9d759cf96696","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837902.0389123} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb7de176-8e61-43ce-8492-86be50b90056","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb7de176-8e61-43ce-8492-86be50b90056","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:19.732246775Z"}]},"request_id":"b3844c2d-7fff-49de-adeb-b0ac64eaf70b","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837902.0395632} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"589d4480-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5360604d6edfa0cc726b9a16ddb4cf21","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5360604d6edfa0cc726b9a16ddb4cf21"} gateway-1 | {"time_local":"24/Jul/2024:16:18:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/eb7de176-8e61-43ce-8492-86be50b90056? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5360604d6edfa0cc726b9a16ddb4cf21"} device-1 | {"level":"info","message":"GET /devices/eb7de176-8e61-43ce-8492-86be50b90056? 200 14ms","method":"GET","requestID":"5360604d6edfa0cc726b9a16ddb4cf21","responseTime":14,"status":200,"url":"/devices/eb7de176-8e61-43ce-8492-86be50b90056?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"589d4480-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"589d4480-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/45840f5d-53e2-43a3-b69a-b91cd1981857'","requestID":"589d4480-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/45840f5d-53e2-43a3-b69a-b91cd1981857'","requestID":"589d4480-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"589d4480-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 30ms","method":"POST","requestID":"589d4480-49d8-11ef-9fe8-9113c2c8d024","responseTime":30,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"589d4480-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/45840f5d-53e2-43a3-b69a-b91cd1981857","device":"eb7de176-8e61-43ce-8492-86be50b90056","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/10545f61-26d7-4ef2-8931-7a7cd7989408"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"8e3f0f5cf813b15f1e8f08c9a51dd764"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"58a5f710-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":459,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:22Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09d204dc-7041-4c2b-b936-c229821c42dd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ba2b3ae5-b333-4ed0-9bf5-67341ad3fab9","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837902.0854175} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":459,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.607586,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/09d204dc-7041-4c2b-b936-c229821c42dd","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"58a5f710-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/09d204dc-7041-4c2b-b936-c229821c42dd","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"58a5f710-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"58a5f710-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/09d204dc-7041-4c2b-b936-c229821c42dd/signaling 200 8ms","method":"POST","requestID":"58a5f710-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/devices/09d204dc-7041-4c2b-b936-c229821c42dd/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"58a77db0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"device":"eb7de176-8e61-43ce-8492-86be50b90056","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"eb7de176-8e61-43ce-8492-86be50b90056","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":460,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:22Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb7de176-8e61-43ce-8492-86be50b90056","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e2d969e4-fe5c-422c-a363-095521a615cf","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837902.0961318} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":460,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.160746,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb7de176-8e61-43ce-8492-86be50b90056","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"58a77db0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/eb7de176-8e61-43ce-8492-86be50b90056","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"58a77db0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"58a77db0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/eb7de176-8e61-43ce-8492-86be50b90056/signaling 200 9ms","method":"POST","requestID":"58a77db0-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/devices/eb7de176-8e61-43ce-8492-86be50b90056/signaling"} device-1 | {"device":"09d204dc-7041-4c2b-b936-c229821c42dd","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"45840f5d-53e2-43a3-b69a-b91cd1981857","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 4409418370003206495 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:aqDI\r\na=ice-pwd:1Hov1yNFCNPH0l5PNbnYv1SE\r\na=ice-options:trickle\r\na=fingerprint:sha-256 45:D5:A0:DA:77:C0:69:D5:FC:FF:52:BE:A6:C0:41:04:FE:97:06:60:50:41:66:2A:7C:56:8A:8C:E1:7B:01:35\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"eb7de176-8e61-43ce-8492-86be50b90056","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3436508498 1 udp 2113937151 afb8cbda-335d-4f0c-8e05-35c05fcec5c7.local 45528 typ host generation 0 ufrag aqDI network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"eb7de176-8e61-43ce-8492-86be50b90056","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"eb7de176-8e61-43ce-8492-86be50b90056","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:1224318765 1 udp 1677729535 141.24.211.56 45528 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag aqDI network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"eb7de176-8e61-43ce-8492-86be50b90056","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/45840f5d-53e2-43a3-b69a-b91cd1981857' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"45840f5d-53e2-43a3-b69a-b91cd1981857","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"09d204dc-7041-4c2b-b936-c229821c42dd","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"09d204dc-7041-4c2b-b936-c229821c42dd","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"09d204dc-7041-4c2b-b936-c229821c42dd","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.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":"a3cc8e2d5d63efd42252ca670ca5e1bd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/eb7de176-8e61-43ce-8492-86be50b90056'"} device-1 | {"device":"eb7de176-8e61-43ce-8492-86be50b90056","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a3cc8e2d5d63efd42252ca670ca5e1bd","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/eb7de176-8e61-43ce-8492-86be50b90056"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/09d204dc-7041-4c2b-b936-c229821c42dd"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/45840f5d-53e2-43a3-b69a-b91cd1981857"}}},"level":"info","message":"received a callback","requestID":"a3cc8e2d5d63efd42252ca670ca5e1bd"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"a3cc8e2d5d63efd42252ca670ca5e1bd","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"a3cc8e2d5d63efd42252ca670ca5e1bd"} device-1 | {"data":{"peerconnection":"45840f5d-53e2-43a3-b69a-b91cd1981857","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"09d204dc-7041-4c2b-b936-c229821c42dd","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"eb7de176-8e61-43ce-8492-86be50b90056","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"data":{"peerconnection":"45840f5d-53e2-43a3-b69a-b91cd1981857","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"09d204dc-7041-4c2b-b936-c229821c42dd","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"eb7de176-8e61-43ce-8492-86be50b90056","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/45840f5d-53e2-43a3-b69a-b91cd1981857' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"45840f5d-53e2-43a3-b69a-b91cd1981857","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f5f1dd46adba188b7add08ec13a62e5b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"f5f1dd46adba188b7add08ec13a62e5b","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/eb7de176-8e61-43ce-8492-86be50b90056"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/09d204dc-7041-4c2b-b936-c229821c42dd"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/45840f5d-53e2-43a3-b69a-b91cd1981857"}}},"level":"info","message":"received a callback","requestID":"f5f1dd46adba188b7add08ec13a62e5b"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"59f05160-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":461,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:24Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F45840f5d-53e2-43a3-b69a-b91cd1981857","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"edc0ace7-ed8f-496c-a529-06ff1b86f7ea","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837904.2531993} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":461,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.877653,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/45840f5d-53e2-43a3-b69a-b91cd1981857","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"59f05160-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/45840f5d-53e2-43a3-b69a-b91cd1981857","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":"59f05160-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"59f05160-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /peerconnections/45840f5d-53e2-43a3-b69a-b91cd1981857 200 13ms","method":"GET","requestID":"59f05160-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/peerconnections/45840f5d-53e2-43a3-b69a-b91cd1981857"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 45ms","method":"POST","requestID":"f5f1dd46adba188b7add08ec13a62e5b","responseTime":45,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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.050","http_referrer":"","http_user_agent":"node-fetch","requestID":"f5f1dd46adba188b7add08ec13a62e5b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"59f644d0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":462,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:24Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb7de176-8e61-43ce-8492-86be50b90056","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7e176354-8374-43bb-a86b-2496a7a917fa","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837904.2916555} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":462,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.689706,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb7de176-8e61-43ce-8492-86be50b90056","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"59f644d0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/eb7de176-8e61-43ce-8492-86be50b90056","object_type":"device","rebac_allow":false,"scope_allow":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":"59f644d0-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"59f644d0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/eb7de176-8e61-43ce-8492-86be50b90056/signaling 200 13ms","method":"POST","requestID":"59f644d0-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/devices/eb7de176-8e61-43ce-8492-86be50b90056/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"59f8b5d0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":463,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:24Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09d204dc-7041-4c2b-b936-c229821c42dd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6a1fa081-526d-4aee-a2fb-e89925b7bc98","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837904.308463} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":463,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.782162,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/09d204dc-7041-4c2b-b936-c229821c42dd","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"59f8b5d0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/09d204dc-7041-4c2b-b936-c229821c42dd","object_type":"device","rebac_allow":false,"scope_allow":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":"59f8b5d0-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"59f8b5d0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/09d204dc-7041-4c2b-b936-c229821c42dd/signaling 200 14ms","method":"POST","requestID":"59f8b5d0-49d8-11ef-9fe8-9113c2c8d024","responseTime":14,"status":200,"url":"/devices/09d204dc-7041-4c2b-b936-c229821c42dd/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwNH0.APwGvkkOpPCU3-c4o6zOMFMfduhYFNvlBjBZWLs8agQ","level":"info","message":"auth send jwt","requestID":"c6bb9b58324f0e7a8020c96b6aa54307"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c6bb9b58324f0e7a8020c96b6aa54307","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/10545f61-26d7-4ef2-8931-7a7cd7989408","requestID":"c6bb9b58324f0e7a8020c96b6aa54307"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":464,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:24Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":464,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.936538,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/10545f61-26d7-4ef2-8931-7a7cd7989408","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"c6bb9b58324f0e7a8020c96b6aa54307","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/10545f61-26d7-4ef2-8931-7a7cd7989408","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837904,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwNH0.APwGvkkOpPCU3-c4o6zOMFMfduhYFNvlBjBZWLs8agQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c6bb9b58324f0e7a8020c96b6aa54307","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/10545f61-26d7-4ef2-8931-7a7cd7989408","requestID":"c6bb9b58324f0e7a8020c96b6aa54307"} gateway-1 | {"time_local":"24/Jul/2024:16:18:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/10545f61-26d7-4ef2-8931-7a7cd7989408 HTTP/1.1","status": "200","body_bytes_sent":"1364","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c6bb9b58324f0e7a8020c96b6aa54307"} experiment-1 | {"level":"info","message":"GET /experiments/10545f61-26d7-4ef2-8931-7a7cd7989408 200 17ms","method":"GET","requestID":"c6bb9b58324f0e7a8020c96b6aa54307","responseTime":17,"status":200,"url":"/experiments/10545f61-26d7-4ef2-8931-7a7cd7989408"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwNH0.APwGvkkOpPCU3-c4o6zOMFMfduhYFNvlBjBZWLs8agQ","level":"info","message":"auth send jwt","requestID":"6d6838c1fabd9c987edee768c551f231"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6d6838c1fabd9c987edee768c551f231","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/10545f61-26d7-4ef2-8931-7a7cd7989408","requestID":"6d6838c1fabd9c987edee768c551f231"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":465,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:24Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":465,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.443268,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:24Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/10545f61-26d7-4ef2-8931-7a7cd7989408","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6d6838c1fabd9c987edee768c551f231","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/10545f61-26d7-4ef2-8931-7a7cd7989408","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837904,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwNH0.APwGvkkOpPCU3-c4o6zOMFMfduhYFNvlBjBZWLs8agQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6d6838c1fabd9c987edee768c551f231","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/10545f61-26d7-4ef2-8931-7a7cd7989408"},"level":"info","message":"Attempting to finish experiment","requestID":"6d6838c1fabd9c987edee768c551f231"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"5a0511e0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":466,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:24Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":466,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.239826,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:24Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/45840f5d-53e2-43a3-b69a-b91cd1981857","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5a0511e0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:http://localhost/peerconnections/45840f5d-53e2-43a3-b69a-b91cd1981857","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837904,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwNH0.APwGvkkOpPCU3-c4o6zOMFMfduhYFNvlBjBZWLs8agQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5a0511e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/45840f5d-53e2-43a3-b69a-b91cd1981857","device":"eb7de176-8e61-43ce-8492-86be50b90056","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"09d204dc-7041-4c2b-b936-c229821c42dd","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"09d204dc-7041-4c2b-b936-c229821c42dd","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"09d204dc-7041-4c2b-b936-c229821c42dd","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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/45840f5d-53e2-43a3-b69a-b91cd1981857' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/45840f5d-53e2-43a3-b69a-b91cd1981857' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"45840f5d-53e2-43a3-b69a-b91cd1981857","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F45840f5d-53e2-43a3-b69a-b91cd1981857': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F45840f5d-53e2-43a3-b69a-b91cd1981857","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"8a7f5b4f-6204-4339-8c65-266b38374a63","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837904.4022245} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1e71eff4-68db-49e8-9d48-a71b75220d25","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837904.4024527} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b73992d557ff56871a59d9a8afc86693","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b73992d557ff56871a59d9a8afc86693","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c844ee383641719dd65db19fca1b61c1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/eb7de176-8e61-43ce-8492-86be50b90056"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/09d204dc-7041-4c2b-b936-c229821c42dd"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/45840f5d-53e2-43a3-b69a-b91cd1981857"}}},"level":"info","message":"received a callback","requestID":"b73992d557ff56871a59d9a8afc86693"} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"5a0511e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":11,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c844ee383641719dd65db19fca1b61c1","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/eb7de176-8e61-43ce-8492-86be50b90056"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/09d204dc-7041-4c2b-b936-c229821c42dd"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/45840f5d-53e2-43a3-b69a-b91cd1981857"}}},"level":"info","message":"received a callback","requestID":"c844ee383641719dd65db19fca1b61c1"} device-1 | {"data":{"peerconnection":"45840f5d-53e2-43a3-b69a-b91cd1981857","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"5a0511e0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"DELETE /peerconnections/45840f5d-53e2-43a3-b69a-b91cd1981857 204 43ms","method":"DELETE","requestID":"5a0511e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":43,"status":204,"url":"/peerconnections/45840f5d-53e2-43a3-b69a-b91cd1981857"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/10545f61-26d7-4ef2-8931-7a7cd7989408"},"level":"info","message":"Successfully finished experiment","requestID":"6d6838c1fabd9c987edee768c551f231"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5a0e39a0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":467,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:24Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb7de176-8e61-43ce-8492-86be50b90056","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9d9882c4-3f21-41fd-af71-9708218be49b","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837904.4496682} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":467,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.322223,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb7de176-8e61-43ce-8492-86be50b90056","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5a0e39a0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/eb7de176-8e61-43ce-8492-86be50b90056","object_type":"device","rebac_allow":false,"scope_allow":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":"5a0e39a0-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5a0e39a0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/eb7de176-8e61-43ce-8492-86be50b90056/signaling 200 14ms","method":"POST","requestID":"5a0e39a0-49d8-11ef-9fe8-9113c2c8d024","responseTime":14,"status":200,"url":"/devices/eb7de176-8e61-43ce-8492-86be50b90056/signaling"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F10545f61-26d7-4ef2-8931-7a7cd7989408': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F10545f61-26d7-4ef2-8931-7a7cd7989408","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"5b932f75-e894-48d2-b954-45a4b342fef1","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837904.4568522} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8c5e5319-7968-4766-83b6-9cbe45cad83a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837904.4578607} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"6d6838c1fabd9c987edee768c551f231","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5a10f8c0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":468,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:24Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09d204dc-7041-4c2b-b936-c229821c42dd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6009540e-fe78-48a3-b96c-c70ba5cc2e74","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837904.466781} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":468,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.241024,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/09d204dc-7041-4c2b-b936-c229821c42dd","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5a10f8c0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/09d204dc-7041-4c2b-b936-c229821c42dd","object_type":"device","rebac_allow":false,"scope_allow":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":"5a10f8c0-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5a10f8c0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/09d204dc-7041-4c2b-b936-c229821c42dd/signaling 200 13ms","method":"POST","requestID":"5a10f8c0-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/devices/09d204dc-7041-4c2b-b936-c229821c42dd/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/10545f61-26d7-4ef2-8931-7a7cd7989408","requestID":"6d6838c1fabd9c987edee768c551f231"} gateway-1 | {"time_local":"24/Jul/2024:16:18:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/10545f61-26d7-4ef2-8931-7a7cd7989408 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.172","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6d6838c1fabd9c987edee768c551f231"} experiment-1 | {"level":"info","message":"DELETE /experiments/10545f61-26d7-4ef2-8931-7a7cd7989408 204 167ms","method":"DELETE","requestID":"6d6838c1fabd9c987edee768c551f231","responseTime":167,"status":204,"url":"/experiments/10545f61-26d7-4ef2-8931-7a7cd7989408"} gateway-1 | {"time_local":"24/Jul/2024:16:18:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2839","request_time":"4.244","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"84e0c6111696fcddd5ff2cc69bed8770"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 131ms","method":"POST","requestID":"b73992d557ff56871a59d9a8afc86693","responseTime":131,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.134","http_referrer":"","http_user_agent":"node-fetch","requestID":"b73992d557ff56871a59d9a8afc86693"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 130ms","method":"POST","requestID":"c844ee383641719dd65db19fca1b61c1","responseTime":130,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.135","http_referrer":"","http_user_agent":"node-fetch","requestID":"c844ee383641719dd65db19fca1b61c1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwNH0.APwGvkkOpPCU3-c4o6zOMFMfduhYFNvlBjBZWLs8agQ","level":"info","message":"auth send jwt","requestID":"0509a25adb9b26505606fd81ed09e983"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0509a25adb9b26505606fd81ed09e983","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"0509a25adb9b26505606fd81ed09e983"} gateway-1 | {"time_local":"24/Jul/2024:16:18:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2745","request_time":"2.760","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a2d2154db46b5160495aec15e98468e4"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":469,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:24Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":469,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.083978,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"0509a25adb9b26505606fd81ed09e983","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837904,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwNH0.APwGvkkOpPCU3-c4o6zOMFMfduhYFNvlBjBZWLs8agQ"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/09d204dc-7041-4c2b-b936-c229821c42dd' closed"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0509a25adb9b26505606fd81ed09e983","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/eb7de176-8e61-43ce-8492-86be50b90056' 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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031216f9-ab62-4c93-a469-87135f28447a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d4711a53-cfca-43e4-b3bf-a1f52638f255","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837904.5605223} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0509a25adb9b26505606fd81ed09e983","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d445ee89-d3e6-4aab-aeab-5590992f97f4","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837904.565693} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"0509a25adb9b26505606fd81ed09e983","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031216f9-ab62-4c93-a469-87135f28447a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"47a43d84-7d29-419f-b354-16f027b1b240","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837904.5752404} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9f173d56-1bdb-42e1-9689-0f8ca73686e9","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837904.575443} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"0509a25adb9b26505606fd81ed09e983","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031216f9-ab62-4c93-a469-87135f28447a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031216f9-ab62-4c93-a469-87135f28447a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:24.575216899Z"}]},"request_id":"c81121fb-399d-45a6-ae2e-9bc0e7b2114e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837904.57987} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"0509a25adb9b26505606fd81ed09e983","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"0509a25adb9b26505606fd81ed09e983"} gateway-1 | {"time_local":"24/Jul/2024:16:18:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0509a25adb9b26505606fd81ed09e983"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"0509a25adb9b26505606fd81ed09e983","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwNH0.APwGvkkOpPCU3-c4o6zOMFMfduhYFNvlBjBZWLs8agQ","level":"info","message":"auth send jwt","requestID":"30da9cf1d625368b5d394a4110591a7b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"30da9cf1d625368b5d394a4110591a7b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"30da9cf1d625368b5d394a4110591a7b"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":470,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:24Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":470,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.826853,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"30da9cf1d625368b5d394a4110591a7b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837904,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwNH0.APwGvkkOpPCU3-c4o6zOMFMfduhYFNvlBjBZWLs8agQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"30da9cf1d625368b5d394a4110591a7b","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8232d7f6-095a-49ee-82a7-e953809a19bf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"6518b312-2a50-4c7d-93d8-0d9ea8dc6ad2","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837904.604336} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"30da9cf1d625368b5d394a4110591a7b","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"96e1f6b2-8dc6-46cf-be4f-a6f3cc065071","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837904.6091115} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"30da9cf1d625368b5d394a4110591a7b","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8232d7f6-095a-49ee-82a7-e953809a19bf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"6c3d6d91-d596-4647-93c3-3f3941a30610","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837904.6252568} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"15689177-b849-4666-a364-c6ad2a0b90c3","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837904.625362} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"30da9cf1d625368b5d394a4110591a7b","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8232d7f6-095a-49ee-82a7-e953809a19bf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8232d7f6-095a-49ee-82a7-e953809a19bf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:24.625227909Z"}]},"request_id":"34c24a66-49a7-46c8-9489-6218a450b51b","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837904.6295645} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"30da9cf1d625368b5d394a4110591a7b","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"30da9cf1d625368b5d394a4110591a7b"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"30da9cf1d625368b5d394a4110591a7b","responseTime":42,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Jul/2024:16:18:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"30da9cf1d625368b5d394a4110591a7b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwNX0.GZEvrt1NJiiFN8rC7zrDliBj6_bPG0SKOMdPOjylXcU","level":"info","message":"auth send jwt","requestID":"21c934a76ea13b381202621faad9da65"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"21c934a76ea13b381202621faad9da65","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"21c934a76ea13b381202621faad9da65"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":471,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:25Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":471,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.128588,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:25Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/031216f9-ab62-4c93-a469-87135f28447a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"21c934a76ea13b381202621faad9da65","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/031216f9-ab62-4c93-a469-87135f28447a","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837905,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwNX0.GZEvrt1NJiiFN8rC7zrDliBj6_bPG0SKOMdPOjylXcU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"21c934a76ea13b381202621faad9da65","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031216f9-ab62-4c93-a469-87135f28447a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031216f9-ab62-4c93-a469-87135f28447a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:24.575216899Z"}]},"request_id":"42b9a2b1-e27f-450f-98e1-53e64d078437","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837905.1236339} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"21c934a76ea13b381202621faad9da65","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"183bd6eb-8e58-4ea2-b891-3a9781c28a53","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837905.1306875} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"21c934a76ea13b381202621faad9da65","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031216f9-ab62-4c93-a469-87135f28447a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031216f9-ab62-4c93-a469-87135f28447a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:24.575216899Z"}]},"request_id":"e06e4eca-e38d-45c4-a621-d7accec4d7c1","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837905.1439283} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"21c934a76ea13b381202621faad9da65","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"21c934a76ea13b381202621faad9da65"} gateway-1 | {"time_local":"24/Jul/2024:16:18:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/031216f9-ab62-4c93-a469-87135f28447a HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.043","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"21c934a76ea13b381202621faad9da65"} device-1 | {"level":"info","message":"PATCH /devices/031216f9-ab62-4c93-a469-87135f28447a 200 36ms","method":"PATCH","requestID":"21c934a76ea13b381202621faad9da65","responseTime":36,"status":200,"url":"/devices/031216f9-ab62-4c93-a469-87135f28447a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwNX0.GZEvrt1NJiiFN8rC7zrDliBj6_bPG0SKOMdPOjylXcU","level":"info","message":"auth send jwt","requestID":"6c6e2a277e2f0d3ac4ce4c14a1f4a759"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6c6e2a277e2f0d3ac4ce4c14a1f4a759","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"6c6e2a277e2f0d3ac4ce4c14a1f4a759"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":472,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:25Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":472,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.358077,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:25Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/031216f9-ab62-4c93-a469-87135f28447a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6c6e2a277e2f0d3ac4ce4c14a1f4a759","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/031216f9-ab62-4c93-a469-87135f28447a","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837905,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwNX0.GZEvrt1NJiiFN8rC7zrDliBj6_bPG0SKOMdPOjylXcU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6c6e2a277e2f0d3ac4ce4c14a1f4a759","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"6c6e2a277e2f0d3ac4ce4c14a1f4a759"} device-1 | {"level":"info","message":"POST /devices/031216f9-ab62-4c93-a469-87135f28447a/websocket 200 20ms","method":"POST","requestID":"6c6e2a277e2f0d3ac4ce4c14a1f4a759","responseTime":20,"status":200,"url":"/devices/031216f9-ab62-4c93-a469-87135f28447a/websocket"} gateway-1 | {"time_local":"24/Jul/2024:16:18:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/031216f9-ab62-4c93-a469-87135f28447a/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"6c6e2a277e2f0d3ac4ce4c14a1f4a759"} device-1 | {"level":"info","message":"device 'http://localhost/devices/031216f9-ab62-4c93-a469-87135f28447a' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"11f5560cb87640672d3b04f645bbc3cf","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"11f5560cb87640672d3b04f645bbc3cf","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Jul/2024:16:18:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/8232d7f6-095a-49ee-82a7-e953809a19bf/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":"11f5560cb87640672d3b04f645bbc3cf"} device-1 | {"level":"info","message":"OPTIONS /devices/8232d7f6-095a-49ee-82a7-e953809a19bf/websocket 200 2ms","method":"OPTIONS","requestID":"11f5560cb87640672d3b04f645bbc3cf","responseTime":2,"status":200,"url":"/devices/8232d7f6-095a-49ee-82a7-e953809a19bf/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwNn0.Po82_o6zVppG5a4qYJEpl4bBIkx6DikdFiISP1tDAz4","level":"info","message":"auth send jwt","requestID":"8cddc331756d15ff6b4589e347072855"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"8cddc331756d15ff6b4589e347072855","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"8cddc331756d15ff6b4589e347072855"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":473,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:26Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":473,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.223282,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:26Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8232d7f6-095a-49ee-82a7-e953809a19bf","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"8cddc331756d15ff6b4589e347072855","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/8232d7f6-095a-49ee-82a7-e953809a19bf","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837906,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwNn0.Po82_o6zVppG5a4qYJEpl4bBIkx6DikdFiISP1tDAz4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8cddc331756d15ff6b4589e347072855","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"8cddc331756d15ff6b4589e347072855"} gateway-1 | {"time_local":"24/Jul/2024:16:18:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8232d7f6-095a-49ee-82a7-e953809a19bf/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":"8cddc331756d15ff6b4589e347072855"} device-1 | {"level":"info","message":"POST /devices/8232d7f6-095a-49ee-82a7-e953809a19bf/websocket 200 22ms","method":"POST","requestID":"8cddc331756d15ff6b4589e347072855","responseTime":22,"status":200,"url":"/devices/8232d7f6-095a-49ee-82a7-e953809a19bf/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8232d7f6-095a-49ee-82a7-e953809a19bf' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwNn0.Po82_o6zVppG5a4qYJEpl4bBIkx6DikdFiISP1tDAz4","level":"info","message":"auth send jwt","requestID":"019b0dbda23d579b2afeaac5694b569f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"019b0dbda23d579b2afeaac5694b569f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"019b0dbda23d579b2afeaac5694b569f"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":474,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:26Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":474,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.293753,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/031216f9-ab62-4c93-a469-87135f28447a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"019b0dbda23d579b2afeaac5694b569f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/031216f9-ab62-4c93-a469-87135f28447a","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837906,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwNn0.Po82_o6zVppG5a4qYJEpl4bBIkx6DikdFiISP1tDAz4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"019b0dbda23d579b2afeaac5694b569f","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031216f9-ab62-4c93-a469-87135f28447a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031216f9-ab62-4c93-a469-87135f28447a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:24.575216899Z"}]},"request_id":"7ee6a858-a172-47ff-943a-a75bc52bb92f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837906.6740813} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"019b0dbda23d579b2afeaac5694b569f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"019b0dbda23d579b2afeaac5694b569f"} device-1 | {"level":"info","message":"GET /devices/031216f9-ab62-4c93-a469-87135f28447a? 200 17ms","method":"GET","requestID":"019b0dbda23d579b2afeaac5694b569f","responseTime":17,"status":200,"url":"/devices/031216f9-ab62-4c93-a469-87135f28447a?"} gateway-1 | {"time_local":"24/Jul/2024:16:18:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/031216f9-ab62-4c93-a469-87135f28447a? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"019b0dbda23d579b2afeaac5694b569f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwNn0.Po82_o6zVppG5a4qYJEpl4bBIkx6DikdFiISP1tDAz4","level":"info","message":"auth send jwt","requestID":"f0769ecb859717dcd934fc3c382ca389"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f0769ecb859717dcd934fc3c382ca389","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f0769ecb859717dcd934fc3c382ca389"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":475,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:26Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":475,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.319677,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8232d7f6-095a-49ee-82a7-e953809a19bf","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"f0769ecb859717dcd934fc3c382ca389","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/8232d7f6-095a-49ee-82a7-e953809a19bf","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837906,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwNn0.Po82_o6zVppG5a4qYJEpl4bBIkx6DikdFiISP1tDAz4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f0769ecb859717dcd934fc3c382ca389","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8232d7f6-095a-49ee-82a7-e953809a19bf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8232d7f6-095a-49ee-82a7-e953809a19bf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:24.625227909Z"}]},"request_id":"4ff7714d-86e2-4007-b2ef-8fbe994c876f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837906.6992} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f0769ecb859717dcd934fc3c382ca389","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f0769ecb859717dcd934fc3c382ca389"} device-1 | {"level":"info","message":"GET /devices/8232d7f6-095a-49ee-82a7-e953809a19bf? 200 17ms","method":"GET","requestID":"f0769ecb859717dcd934fc3c382ca389","responseTime":17,"status":200,"url":"/devices/8232d7f6-095a-49ee-82a7-e953809a19bf?"} gateway-1 | {"time_local":"24/Jul/2024:16:18:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8232d7f6-095a-49ee-82a7-e953809a19bf? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f0769ecb859717dcd934fc3c382ca389"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwNn0.Po82_o6zVppG5a4qYJEpl4bBIkx6DikdFiISP1tDAz4","level":"info","message":"auth send jwt","requestID":"09e40a82bbbad66bd688ae680d44507d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"09e40a82bbbad66bd688ae680d44507d","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"09e40a82bbbad66bd688ae680d44507d"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":476,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:26Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":476,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":2.551889,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"09e40a82bbbad66bd688ae680d44507d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837906,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwNn0.Po82_o6zVppG5a4qYJEpl4bBIkx6DikdFiISP1tDAz4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"09e40a82bbbad66bd688ae680d44507d","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2593a0b7-7932-4b53-95f9-43132a7e6bb6"},"level":"info","message":"Attempting to run experiment","requestID":"09e40a82bbbad66bd688ae680d44507d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2593a0b7-7932-4b53-95f9-43132a7e6bb6"},"level":"info","message":"Attempting to book experiment","requestID":"09e40a82bbbad66bd688ae680d44507d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2593a0b7-7932-4b53-95f9-43132a7e6bb6"},"level":"info","message":"Successfully booked experiment","requestID":"09e40a82bbbad66bd688ae680d44507d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5b6fc570-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5b701390-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":477,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:26Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":477,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.857962,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/031216f9-ab62-4c93-a469-87135f28447a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5b6fc570-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/031216f9-ab62-4c93-a469-87135f28447a","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837906,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwNn0.Po82_o6zVppG5a4qYJEpl4bBIkx6DikdFiISP1tDAz4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5b6fc570-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Received request.","req_id":478,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Sent response.","req_id":478,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.810978,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8232d7f6-095a-49ee-82a7-e953809a19bf","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5b701390-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/8232d7f6-095a-49ee-82a7-e953809a19bf","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837906,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwNn0.Po82_o6zVppG5a4qYJEpl4bBIkx6DikdFiISP1tDAz4"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"5b701390-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031216f9-ab62-4c93-a469-87135f28447a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031216f9-ab62-4c93-a469-87135f28447a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:24.575216899Z"}]},"request_id":"18d4435f-a04e-473e-83da-4fe945863e23","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837906.7715206} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5b6fc570-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8232d7f6-095a-49ee-82a7-e953809a19bf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8232d7f6-095a-49ee-82a7-e953809a19bf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:24.625227909Z"}]},"request_id":"6ca5525d-2d40-40e7-81ad-b20a1c77e165","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837906.7769258} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5b6fc570-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5b701390-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/031216f9-ab62-4c93-a469-87135f28447a? 200 19ms","method":"GET","requestID":"5b6fc570-49d8-11ef-9fe8-9113c2c8d024","responseTime":19,"status":200,"url":"/devices/031216f9-ab62-4c93-a469-87135f28447a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5b701390-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/8232d7f6-095a-49ee-82a7-e953809a19bf? 200 21ms","method":"GET","requestID":"5b701390-49d8-11ef-9fe8-9113c2c8d024","responseTime":21,"status":200,"url":"/devices/8232d7f6-095a-49ee-82a7-e953809a19bf?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2593a0b7-7932-4b53-95f9-43132a7e6bb6"},"level":"info","message":"Setting up experiment","requestID":"09e40a82bbbad66bd688ae680d44507d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2593a0b7-7932-4b53-95f9-43132a7e6bb6"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"09e40a82bbbad66bd688ae680d44507d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2593a0b7-7932-4b53-95f9-43132a7e6bb6"},"level":"info","message":"Successfully locked booking for experiment","requestID":"09e40a82bbbad66bd688ae680d44507d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2593a0b7-7932-4b53-95f9-43132a7e6bb6"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"09e40a82bbbad66bd688ae680d44507d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2593a0b7-7932-4b53-95f9-43132a7e6bb6"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"09e40a82bbbad66bd688ae680d44507d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2593a0b7-7932-4b53-95f9-43132a7e6bb6"},"level":"info","message":"Attempting to update booking for experiment","requestID":"09e40a82bbbad66bd688ae680d44507d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2593a0b7-7932-4b53-95f9-43132a7e6bb6"},"level":"info","message":"Successfully updated booking for experiment","requestID":"09e40a82bbbad66bd688ae680d44507d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2593a0b7-7932-4b53-95f9-43132a7e6bb6"},"level":"info","message":"Successfully set up experiment","requestID":"09e40a82bbbad66bd688ae680d44507d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5b7bac50-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5b7bfa70-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5b7c4890-49d8-11ef-9fe8-9113c2c8d024"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2593a0b7-7932-4b53-95f9-43132a7e6bb6"},"level":"info","message":"Successfully running experiment","requestID":"09e40a82bbbad66bd688ae680d44507d"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":479,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:26Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":479,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.899947,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/031216f9-ab62-4c93-a469-87135f28447a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5b7bac50-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/031216f9-ab62-4c93-a469-87135f28447a","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837906,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwNn0.Po82_o6zVppG5a4qYJEpl4bBIkx6DikdFiISP1tDAz4"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"5b7bac50-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Received request.","req_id":480,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Sent response.","req_id":480,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.197452,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8232d7f6-095a-49ee-82a7-e953809a19bf","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5b7bfa70-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/8232d7f6-095a-49ee-82a7-e953809a19bf","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837906,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwNn0.Po82_o6zVppG5a4qYJEpl4bBIkx6DikdFiISP1tDAz4"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"5b7bfa70-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58274","level":"info","msg":"Received request.","req_id":481,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:26Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8232d7f6-095a-49ee-82a7-e953809a19bf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8232d7f6-095a-49ee-82a7-e953809a19bf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:24.625227909Z"}]},"request_id":"0ec04e9b-cb25-4165-b1dd-16e5a516e6d6","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837906.8562818} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031216f9-ab62-4c93-a469-87135f28447a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d24b8406-722f-4dc3-8b0b-aaf7925147e5","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837906.8566804} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"5b7bfa70-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031216f9-ab62-4c93-a469-87135f28447a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031216f9-ab62-4c93-a469-87135f28447a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:24.575216899Z"}]},"request_id":"5e76d674-f13d-48ab-8449-183917be1980","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837906.8575034} authorization-1 | {"client_addr":"127.0.0.1:58274","level":"info","msg":"Sent response.","req_id":481,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.758867,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/031216f9-ab62-4c93-a469-87135f28447a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5b7c4890-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/031216f9-ab62-4c93-a469-87135f28447a","object_type":"device","rebac_allow":false,"scope_allow":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":"5b7c4890-49d8-11ef-9fe8-9113c2c8d024","responseTime":15,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"5b7bac50-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5b7bfa70-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/8232d7f6-095a-49ee-82a7-e953809a19bf? 200 27ms","method":"GET","requestID":"5b7bfa70-49d8-11ef-9fe8-9113c2c8d024","responseTime":27,"status":200,"url":"/devices/8232d7f6-095a-49ee-82a7-e953809a19bf?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5b7c4890-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/031216f9-ab62-4c93-a469-87135f28447a/signaling 200 27ms","method":"POST","requestID":"5b7c4890-49d8-11ef-9fe8-9113c2c8d024","responseTime":27,"status":200,"url":"/devices/031216f9-ab62-4c93-a469-87135f28447a/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5b7bac50-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/031216f9-ab62-4c93-a469-87135f28447a? 200 33ms","method":"GET","requestID":"5b7bac50-49d8-11ef-9fe8-9113c2c8d024","responseTime":33,"status":200,"url":"/devices/031216f9-ab62-4c93-a469-87135f28447a?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5b810380-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5b8178b0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2593a0b7-7932-4b53-95f9-43132a7e6bb6#owner@http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2593a0b7-7932-4b53-95f9-43132a7e6bb6","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"a134b4a0-362f-4c82-a8a8-a06b43c93035","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837906.8707657} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9e567fc0-3707-4370-ab19-32a65c7d8479","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837906.8712027} authorization-1 | {"level":"info","message":"POST /relations/update 200 26ms","method":"POST","requestID":"09e40a82bbbad66bd688ae680d44507d","responseTime":26,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":482,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Received request.","req_id":483,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:26Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8232d7f6-095a-49ee-82a7-e953809a19bf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d4d09c22-67c1-426b-b315-2ca8827a46ce","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837906.881265} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":482,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.532549,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8232d7f6-095a-49ee-82a7-e953809a19bf","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5b810380-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8232d7f6-095a-49ee-82a7-e953809a19bf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5b810380-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031216f9-ab62-4c93-a469-87135f28447a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a9a6d693-624f-4827-915b-7c01060a717d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837906.8825824} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Sent response.","req_id":483,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.076153,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:26Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/2593a0b7-7932-4b53-95f9-43132a7e6bb6","user":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"09e40a82bbbad66bd688ae680d44507d"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/031216f9-ab62-4c93-a469-87135f28447a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5b8178b0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/031216f9-ab62-4c93-a469-87135f28447a","object_type":"device","rebac_allow":false,"scope_allow":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":"5b8178b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"POST /experiments? 201 173ms","method":"POST","requestID":"09e40a82bbbad66bd688ae680d44507d","responseTime":173,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"24/Jul/2024:16:18:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1291","request_time":"0.179","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"09e40a82bbbad66bd688ae680d44507d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5b810380-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/8232d7f6-095a-49ee-82a7-e953809a19bf/signaling 200 17ms","method":"POST","requestID":"5b810380-49d8-11ef-9fe8-9113c2c8d024","responseTime":17,"status":200,"url":"/devices/8232d7f6-095a-49ee-82a7-e953809a19bf/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwNn0.Po82_o6zVppG5a4qYJEpl4bBIkx6DikdFiISP1tDAz4","level":"info","message":"auth send jwt","requestID":"6a5e4f52c4a8676fa9f2e8a6f8e1e090"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5b8178b0-49d8-11ef-9fe8-9113c2c8d024"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6a5e4f52c4a8676fa9f2e8a6f8e1e090","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"POST /devices/031216f9-ab62-4c93-a469-87135f28447a/signaling 200 17ms","method":"POST","requestID":"5b8178b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":17,"status":200,"url":"/devices/031216f9-ab62-4c93-a469-87135f28447a/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6a5e4f52c4a8676fa9f2e8a6f8e1e090"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5b8485f0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":484,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:26Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":484,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.966293,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Received request.","req_id":485,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/031216f9-ab62-4c93-a469-87135f28447a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6a5e4f52c4a8676fa9f2e8a6f8e1e090","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/031216f9-ab62-4c93-a469-87135f28447a","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837906,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwNn0.Po82_o6zVppG5a4qYJEpl4bBIkx6DikdFiISP1tDAz4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6a5e4f52c4a8676fa9f2e8a6f8e1e090","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8232d7f6-095a-49ee-82a7-e953809a19bf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"12cc0ab8-7fcb-4d76-9b61-c7d9be153582","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837906.8998575} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Sent response.","req_id":485,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.753367,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8232d7f6-095a-49ee-82a7-e953809a19bf","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5b8485f0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8232d7f6-095a-49ee-82a7-e953809a19bf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5b8485f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5b8485f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/8232d7f6-095a-49ee-82a7-e953809a19bf/signaling 200 9ms","method":"POST","requestID":"5b8485f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/devices/8232d7f6-095a-49ee-82a7-e953809a19bf/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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031216f9-ab62-4c93-a469-87135f28447a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031216f9-ab62-4c93-a469-87135f28447a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:24.575216899Z"}]},"request_id":"894abbde-22fc-4599-abd4-dc6fd1ec0e88","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837906.904395} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6a5e4f52c4a8676fa9f2e8a6f8e1e090","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2593a0b7-7932-4b53-95f9-43132a7e6bb6"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"09e40a82bbbad66bd688ae680d44507d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2593a0b7-7932-4b53-95f9-43132a7e6bb6"},"level":"info","message":"Building connection plan","requestID":"09e40a82bbbad66bd688ae680d44507d"} 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":"a28dfaff-d558-4c10-93e9-42a7c2c62636"},{"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":"50f5353e-c1d7-4aac-bdbb-5984c1d80708"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"31104b07-b85c-4774-ada5-31b696a317da"}]},"level":"info","message":"Built pairwise service configurations","requestID":"09e40a82bbbad66bd688ae680d44507d"} experiment-1 | {"data":{"connectionPlan":[{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/031216f9-ab62-4c93-a469-87135f28447a"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/8232d7f6-095a-49ee-82a7-e953809a19bf"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"09e40a82bbbad66bd688ae680d44507d"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6a5e4f52c4a8676fa9f2e8a6f8e1e090"} gateway-1 | {"time_local":"24/Jul/2024:16:18:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/031216f9-ab62-4c93-a469-87135f28447a? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6a5e4f52c4a8676fa9f2e8a6f8e1e090"} device-1 | {"level":"info","message":"GET /devices/031216f9-ab62-4c93-a469-87135f28447a? 200 18ms","method":"GET","requestID":"6a5e4f52c4a8676fa9f2e8a6f8e1e090","responseTime":18,"status":200,"url":"/devices/031216f9-ab62-4c93-a469-87135f28447a?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"5b871e00-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":486,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:26Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwNn0.Po82_o6zVppG5a4qYJEpl4bBIkx6DikdFiISP1tDAz4","level":"info","message":"auth send jwt","requestID":"20e3878b0de0a230a1637586a32fab1e"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":486,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.857653,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:26Z"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"20e3878b0de0a230a1637586a32fab1e","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5b871e00-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837906,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwNn0.Po82_o6zVppG5a4qYJEpl4bBIkx6DikdFiISP1tDAz4"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"20e3878b0de0a230a1637586a32fab1e"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5b871e00-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":487,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:26Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":487,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.424728,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8232d7f6-095a-49ee-82a7-e953809a19bf","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"20e3878b0de0a230a1637586a32fab1e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/8232d7f6-095a-49ee-82a7-e953809a19bf","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837906,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwNn0.Po82_o6zVppG5a4qYJEpl4bBIkx6DikdFiISP1tDAz4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"20e3878b0de0a230a1637586a32fab1e","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","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%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"88a86f1f-055d-4243-adfc-66aac54a8923","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837906.925182} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"df5e84af-bd99-480f-86b1-a7c67d560b93","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837906.925866} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8232d7f6-095a-49ee-82a7-e953809a19bf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8232d7f6-095a-49ee-82a7-e953809a19bf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:24.625227909Z"}]},"request_id":"f3dec309-a6ea-4ff2-b92d-a1036309222b","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837906.926498} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"20e3878b0de0a230a1637586a32fab1e","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"5b871e00-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"20e3878b0de0a230a1637586a32fab1e"} gateway-1 | {"time_local":"24/Jul/2024:16:18:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8232d7f6-095a-49ee-82a7-e953809a19bf? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"20e3878b0de0a230a1637586a32fab1e"} device-1 | {"level":"info","message":"GET /devices/8232d7f6-095a-49ee-82a7-e953809a19bf? 200 15ms","method":"GET","requestID":"20e3878b0de0a230a1637586a32fab1e","responseTime":15,"status":200,"url":"/devices/8232d7f6-095a-49ee-82a7-e953809a19bf?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"5b871e00-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"5b871e00-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/b2ab9271-e2b7-4a25-8d86-5810025ce157'","requestID":"5b871e00-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/b2ab9271-e2b7-4a25-8d86-5810025ce157'","requestID":"5b871e00-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"5b871e00-49d8-11ef-9fe8-9113c2c8d024"} 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":"5b871e00-49d8-11ef-9fe8-9113c2c8d024","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":"5b871e00-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/b2ab9271-e2b7-4a25-8d86-5810025ce157","device":"8232d7f6-095a-49ee-82a7-e953809a19bf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2593a0b7-7932-4b53-95f9-43132a7e6bb6"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"09e40a82bbbad66bd688ae680d44507d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5b8f5b60-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":488,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:26Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031216f9-ab62-4c93-a469-87135f28447a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"59e7db6e-8fc7-44d7-9fc8-1f37266ec458","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837906.9711418} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":488,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.914405,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/031216f9-ab62-4c93-a469-87135f28447a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5b8f5b60-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/031216f9-ab62-4c93-a469-87135f28447a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5b8f5b60-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"device":"8232d7f6-095a-49ee-82a7-e953809a19bf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"8232d7f6-095a-49ee-82a7-e953809a19bf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5b8f5b60-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/031216f9-ab62-4c93-a469-87135f28447a/signaling 200 12ms","method":"POST","requestID":"5b8f5b60-49d8-11ef-9fe8-9113c2c8d024","responseTime":12,"status":200,"url":"/devices/031216f9-ab62-4c93-a469-87135f28447a/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 76217132792092666 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:JEXR\r\na=ice-pwd:6xWVde4JmJD/msimUzup+6qm\r\na=ice-options:trickle\r\na=fingerprint:sha-256 A0:00:D9:9E:D6:45:E5:C9:6F:51:47:EF:17:EA:CE:74:1E:F6:76:34:25:91:0A:70:1F:5A:26:35:78:DA:4A:65\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"8232d7f6-095a-49ee-82a7-e953809a19bf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5b91cc60-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/8232d7f6-095a-49ee-82a7-e953809a19bf'"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":489,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:26Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8232d7f6-095a-49ee-82a7-e953809a19bf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c73c1767-b7d2-4cf2-b5b3-d143b4e3ff67","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837906.9864182} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":489,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.11106,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8232d7f6-095a-49ee-82a7-e953809a19bf","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5b91cc60-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8232d7f6-095a-49ee-82a7-e953809a19bf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5b91cc60-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5b91cc60-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/8232d7f6-095a-49ee-82a7-e953809a19bf/signaling 200 8ms","method":"POST","requestID":"5b91cc60-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/devices/8232d7f6-095a-49ee-82a7-e953809a19bf/signaling"} device-1 | {"device":"8232d7f6-095a-49ee-82a7-e953809a19bf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"031216f9-ab62-4c93-a469-87135f28447a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"b2ab9271-e2b7-4a25-8d86-5810025ce157","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"031216f9-ab62-4c93-a469-87135f28447a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"031216f9-ab62-4c93-a469-87135f28447a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"031216f9-ab62-4c93-a469-87135f28447a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"031216f9-ab62-4c93-a469-87135f28447a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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/b2ab9271-e2b7-4a25-8d86-5810025ce157' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b2ab9271-e2b7-4a25-8d86-5810025ce157","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2e060c21fd2e40670f172e23e0a1ed12","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2e060c21fd2e40670f172e23e0a1ed12","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/031216f9-ab62-4c93-a469-87135f28447a"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/8232d7f6-095a-49ee-82a7-e953809a19bf"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/b2ab9271-e2b7-4a25-8d86-5810025ce157"}}},"level":"info","message":"received a callback","requestID":"2e060c21fd2e40670f172e23e0a1ed12"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"2e060c21fd2e40670f172e23e0a1ed12","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"2e060c21fd2e40670f172e23e0a1ed12"} device-1 | {"content":{"candidate":"candidate:3170318909 1 udp 2113937151 d98181c9-7ab8-4e55-832c-52198b3cd95d.local 59623 typ host generation 0 ufrag JEXR network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"8232d7f6-095a-49ee-82a7-e953809a19bf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:953831490 1 udp 1677729535 141.24.211.56 59623 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag JEXR network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"8232d7f6-095a-49ee-82a7-e953809a19bf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1809313737 1 udp 33562623 141.24.210.113 62758 typ relay raddr 141.24.211.56 rport 59623 generation 0 ufrag JEXR network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"8232d7f6-095a-49ee-82a7-e953809a19bf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"8232d7f6-095a-49ee-82a7-e953809a19bf","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/8232d7f6-095a-49ee-82a7-e953809a19bf'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/8232d7f6-095a-49ee-82a7-e953809a19bf'"} device-1 | {"data":{"peerconnection":"b2ab9271-e2b7-4a25-8d86-5810025ce157","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"031216f9-ab62-4c93-a469-87135f28447a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"8232d7f6-095a-49ee-82a7-e953809a19bf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"031216f9-ab62-4c93-a469-87135f28447a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"b2ab9271-e2b7-4a25-8d86-5810025ce157","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/b2ab9271-e2b7-4a25-8d86-5810025ce157' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b2ab9271-e2b7-4a25-8d86-5810025ce157","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c8ac6d3bab23bf7e62f79e10a5e7be2a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c8ac6d3bab23bf7e62f79e10a5e7be2a","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/031216f9-ab62-4c93-a469-87135f28447a"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8232d7f6-095a-49ee-82a7-e953809a19bf"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/b2ab9271-e2b7-4a25-8d86-5810025ce157"}}},"level":"info","message":"received a callback","requestID":"c8ac6d3bab23bf7e62f79e10a5e7be2a"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"5ccd3290-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":490,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:29Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb2ab9271-e2b7-4a25-8d86-5810025ce157","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5baf8d61-8faf-4be6-8e21-11dd95963f5e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837909.055563} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":490,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.113549,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b2ab9271-e2b7-4a25-8d86-5810025ce157","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5ccd3290-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/b2ab9271-e2b7-4a25-8d86-5810025ce157","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":"5ccd3290-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"5ccd3290-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /peerconnections/b2ab9271-e2b7-4a25-8d86-5810025ce157 200 12ms","method":"GET","requestID":"5ccd3290-49d8-11ef-9fe8-9113c2c8d024","responseTime":12,"status":200,"url":"/peerconnections/b2ab9271-e2b7-4a25-8d86-5810025ce157"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 36ms","method":"POST","requestID":"c8ac6d3bab23bf7e62f79e10a5e7be2a","responseTime":36,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.040","http_referrer":"","http_user_agent":"node-fetch","requestID":"c8ac6d3bab23bf7e62f79e10a5e7be2a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5cd1ed80-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":491,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:29Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031216f9-ab62-4c93-a469-87135f28447a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a3e954fd-c056-469d-ba66-02c1680d3c4c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837909.0864494} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":491,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.855189,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/031216f9-ab62-4c93-a469-87135f28447a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5cd1ed80-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/031216f9-ab62-4c93-a469-87135f28447a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5cd1ed80-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5cd1ed80-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/031216f9-ab62-4c93-a469-87135f28447a/signaling 200 12ms","method":"POST","requestID":"5cd1ed80-49d8-11ef-9fe8-9113c2c8d024","responseTime":12,"status":200,"url":"/devices/031216f9-ab62-4c93-a469-87135f28447a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5cd43770-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":492,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:29Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8232d7f6-095a-49ee-82a7-e953809a19bf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eee7cae2-aab4-45f1-85ef-5321f5d105cf","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837909.1006365} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":492,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.39444,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8232d7f6-095a-49ee-82a7-e953809a19bf","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5cd43770-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8232d7f6-095a-49ee-82a7-e953809a19bf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5cd43770-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5cd43770-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/8232d7f6-095a-49ee-82a7-e953809a19bf/signaling 200 11ms","method":"POST","requestID":"5cd43770-49d8-11ef-9fe8-9113c2c8d024","responseTime":11,"status":200,"url":"/devices/8232d7f6-095a-49ee-82a7-e953809a19bf/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwOX0.tBE__bHS8W1STViCLpZRbMxopkn1YItacp5oxSwMhAQ","level":"info","message":"auth send jwt","requestID":"04f3eadf4cdead37e0fc9c796262db65"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"04f3eadf4cdead37e0fc9c796262db65","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/2593a0b7-7932-4b53-95f9-43132a7e6bb6","requestID":"04f3eadf4cdead37e0fc9c796262db65"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":493,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:29Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":493,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.252314,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/2593a0b7-7932-4b53-95f9-43132a7e6bb6","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"04f3eadf4cdead37e0fc9c796262db65","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/2593a0b7-7932-4b53-95f9-43132a7e6bb6","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837909,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwOX0.tBE__bHS8W1STViCLpZRbMxopkn1YItacp5oxSwMhAQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"04f3eadf4cdead37e0fc9c796262db65","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/2593a0b7-7932-4b53-95f9-43132a7e6bb6","requestID":"04f3eadf4cdead37e0fc9c796262db65"} gateway-1 | {"time_local":"24/Jul/2024:16:18:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/2593a0b7-7932-4b53-95f9-43132a7e6bb6 HTTP/1.1","status": "200","body_bytes_sent":"1364","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"04f3eadf4cdead37e0fc9c796262db65"} experiment-1 | {"level":"info","message":"GET /experiments/2593a0b7-7932-4b53-95f9-43132a7e6bb6 200 15ms","method":"GET","requestID":"04f3eadf4cdead37e0fc9c796262db65","responseTime":15,"status":200,"url":"/experiments/2593a0b7-7932-4b53-95f9-43132a7e6bb6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwOX0.tBE__bHS8W1STViCLpZRbMxopkn1YItacp5oxSwMhAQ","level":"info","message":"auth send jwt","requestID":"f0164988bad82ed91c1d5c1acc53e43e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f0164988bad82ed91c1d5c1acc53e43e","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/2593a0b7-7932-4b53-95f9-43132a7e6bb6","requestID":"f0164988bad82ed91c1d5c1acc53e43e"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":494,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:29Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":494,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.015122,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:29Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/2593a0b7-7932-4b53-95f9-43132a7e6bb6","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"f0164988bad82ed91c1d5c1acc53e43e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/2593a0b7-7932-4b53-95f9-43132a7e6bb6","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837909,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwOX0.tBE__bHS8W1STViCLpZRbMxopkn1YItacp5oxSwMhAQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f0164988bad82ed91c1d5c1acc53e43e","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2593a0b7-7932-4b53-95f9-43132a7e6bb6"},"level":"info","message":"Attempting to finish experiment","requestID":"f0164988bad82ed91c1d5c1acc53e43e"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"5ce0e1a0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":495,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:29Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":495,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.062644,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:29Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b2ab9271-e2b7-4a25-8d86-5810025ce157","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5ce0e1a0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:http://localhost/peerconnections/b2ab9271-e2b7-4a25-8d86-5810025ce157","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837909,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwOX0.tBE__bHS8W1STViCLpZRbMxopkn1YItacp5oxSwMhAQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5ce0e1a0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/b2ab9271-e2b7-4a25-8d86-5810025ce157","device":"8232d7f6-095a-49ee-82a7-e953809a19bf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"031216f9-ab62-4c93-a469-87135f28447a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"031216f9-ab62-4c93-a469-87135f28447a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"031216f9-ab62-4c93-a469-87135f28447a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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/b2ab9271-e2b7-4a25-8d86-5810025ce157' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/b2ab9271-e2b7-4a25-8d86-5810025ce157' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b2ab9271-e2b7-4a25-8d86-5810025ce157","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5094936966cb94c00e2786f3839d69b7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb2ab9271-e2b7-4a25-8d86-5810025ce157': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb2ab9271-e2b7-4a25-8d86-5810025ce157","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"dd46be44-1e55-4af9-bf63-6170c22d1d77","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837909.202122} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c1135a7b-d8a3-4bcc-a62c-af00868ba08e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837909.2023373} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"5094936966cb94c00e2786f3839d69b7","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2b9c632ae38165ee63d5277655bea199","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"5ce0e1a0-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2b9c632ae38165ee63d5277655bea199","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/031216f9-ab62-4c93-a469-87135f28447a"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8232d7f6-095a-49ee-82a7-e953809a19bf"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/b2ab9271-e2b7-4a25-8d86-5810025ce157"}}},"level":"info","message":"received a callback","requestID":"5094936966cb94c00e2786f3839d69b7"} 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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/031216f9-ab62-4c93-a469-87135f28447a"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8232d7f6-095a-49ee-82a7-e953809a19bf"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/b2ab9271-e2b7-4a25-8d86-5810025ce157"}}},"level":"info","message":"received a callback","requestID":"2b9c632ae38165ee63d5277655bea199"} device-1 | {"data":{"peerconnection":"b2ab9271-e2b7-4a25-8d86-5810025ce157","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"5ce0e1a0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"DELETE /peerconnections/b2ab9271-e2b7-4a25-8d86-5810025ce157 204 44ms","method":"DELETE","requestID":"5ce0e1a0-49d8-11ef-9fe8-9113c2c8d024","responseTime":44,"status":204,"url":"/peerconnections/b2ab9271-e2b7-4a25-8d86-5810025ce157"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2593a0b7-7932-4b53-95f9-43132a7e6bb6"},"level":"info","message":"Successfully finished experiment","requestID":"f0164988bad82ed91c1d5c1acc53e43e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5ceb1ad0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":496,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:29Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031216f9-ab62-4c93-a469-87135f28447a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3361cfc0-8d24-44b0-bdd1-3e1d800e7cf2","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837909.2522423} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":496,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.186287,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/031216f9-ab62-4c93-a469-87135f28447a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5ceb1ad0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/031216f9-ab62-4c93-a469-87135f28447a","object_type":"device","rebac_allow":false,"scope_allow":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":"5ceb1ad0-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5ceb1ad0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/031216f9-ab62-4c93-a469-87135f28447a/signaling 200 14ms","method":"POST","requestID":"5ceb1ad0-49d8-11ef-9fe8-9113c2c8d024","responseTime":14,"status":200,"url":"/devices/031216f9-ab62-4c93-a469-87135f28447a/signaling"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2593a0b7-7932-4b53-95f9-43132a7e6bb6': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2593a0b7-7932-4b53-95f9-43132a7e6bb6","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"c31af593-b8d5-4f77-8ff5-1c776ed6f1d9","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837909.259879} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c3331bd0-397f-450e-92e9-97e105f69d9d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837909.2603986} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"f0164988bad82ed91c1d5c1acc53e43e","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5cedb2e0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":497,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:29Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8232d7f6-095a-49ee-82a7-e953809a19bf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4d1ebc2f-7c71-406b-b7cc-24fe589ba561","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837909.268314} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":497,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.642443,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8232d7f6-095a-49ee-82a7-e953809a19bf","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5cedb2e0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8232d7f6-095a-49ee-82a7-e953809a19bf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5cedb2e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5cedb2e0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/8232d7f6-095a-49ee-82a7-e953809a19bf/signaling 200 12ms","method":"POST","requestID":"5cedb2e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":12,"status":200,"url":"/devices/8232d7f6-095a-49ee-82a7-e953809a19bf/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/2593a0b7-7932-4b53-95f9-43132a7e6bb6","requestID":"f0164988bad82ed91c1d5c1acc53e43e"} gateway-1 | {"time_local":"24/Jul/2024:16:18:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/2593a0b7-7932-4b53-95f9-43132a7e6bb6 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":"f0164988bad82ed91c1d5c1acc53e43e"} experiment-1 | {"level":"info","message":"DELETE /experiments/2593a0b7-7932-4b53-95f9-43132a7e6bb6 204 159ms","method":"DELETE","requestID":"f0164988bad82ed91c1d5c1acc53e43e","responseTime":159,"status":204,"url":"/experiments/2593a0b7-7932-4b53-95f9-43132a7e6bb6"} gateway-1 | {"time_local":"24/Jul/2024:16:18:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3229","request_time":"4.147","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"2e446d0306b904e7557f73aae6801060"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 122ms","method":"POST","requestID":"5094936966cb94c00e2786f3839d69b7","responseTime":122,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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.126","http_referrer":"","http_user_agent":"node-fetch","requestID":"5094936966cb94c00e2786f3839d69b7"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 122ms","method":"POST","requestID":"2b9c632ae38165ee63d5277655bea199","responseTime":122,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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.128","http_referrer":"","http_user_agent":"node-fetch","requestID":"2b9c632ae38165ee63d5277655bea199"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwOX0.tBE__bHS8W1STViCLpZRbMxopkn1YItacp5oxSwMhAQ","level":"info","message":"auth send jwt","requestID":"2177e74a59360fde481c89882f94fcc8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2177e74a59360fde481c89882f94fcc8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"2177e74a59360fde481c89882f94fcc8"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":498,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:29Z"} gateway-1 | {"time_local":"24/Jul/2024:16:18:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2740","request_time":"2.694","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"4abfbd017656889a428d0279279414a6"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":498,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":2.806694,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"2177e74a59360fde481c89882f94fcc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837909,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwOX0.tBE__bHS8W1STViCLpZRbMxopkn1YItacp5oxSwMhAQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2177e74a59360fde481c89882f94fcc8","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/031216f9-ab62-4c93-a469-87135f28447a' 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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"39a76d17-5de9-4413-a67f-992f327e10a8","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837909.3521037} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2177e74a59360fde481c89882f94fcc8","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6c15f34f-e2d2-4e48-9269-bc55ded33970","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837909.3567858} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/8232d7f6-095a-49ee-82a7-e953809a19bf' closed"} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"2177e74a59360fde481c89882f94fcc8","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"206ebec7-c9c3-4fc9-b7d8-811910ff17e8","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837909.365971} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"115ac1eb-eef2-4ac7-a88b-eff08c12cacd","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837909.366225} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"2177e74a59360fde481c89882f94fcc8","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:29.365949726Z"}]},"request_id":"6244ea77-da15-41d9-b49f-8cfbec1566db","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837909.3702884} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2177e74a59360fde481c89882f94fcc8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2177e74a59360fde481c89882f94fcc8"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"2177e74a59360fde481c89882f94fcc8","responseTime":42,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Jul/2024:16:18:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2177e74a59360fde481c89882f94fcc8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwOX0.tBE__bHS8W1STViCLpZRbMxopkn1YItacp5oxSwMhAQ","level":"info","message":"auth send jwt","requestID":"3b9f2531bfca9ef51b37b3061b1fa1c1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3b9f2531bfca9ef51b37b3061b1fa1c1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"3b9f2531bfca9ef51b37b3061b1fa1c1"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":499,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:29Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":499,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.934519,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3b9f2531bfca9ef51b37b3061b1fa1c1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837909,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwOX0.tBE__bHS8W1STViCLpZRbMxopkn1YItacp5oxSwMhAQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3b9f2531bfca9ef51b37b3061b1fa1c1","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47bae28d-a4a6-4192-a968-9d63ce2d1c54","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"42fb0fa4-a348-4858-bd62-73cc39c8ff13","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837909.3996236} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"3b9f2531bfca9ef51b37b3061b1fa1c1","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f5858fe9-ef56-496f-94d4-0215c9ceb8f9","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837909.4042842} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"3b9f2531bfca9ef51b37b3061b1fa1c1","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47bae28d-a4a6-4192-a968-9d63ce2d1c54","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"9dacd282-0aae-4195-8c95-3097f91541c4","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837909.4148104} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f576aeec-d265-4d6e-8e38-b9301aff570c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837909.4149091} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"3b9f2531bfca9ef51b37b3061b1fa1c1","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47bae28d-a4a6-4192-a968-9d63ce2d1c54","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47bae28d-a4a6-4192-a968-9d63ce2d1c54","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:29.414790088Z"}]},"request_id":"48618396-631c-406c-badd-b1d2a36d2e4b","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837909.4186797} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"3b9f2531bfca9ef51b37b3061b1fa1c1","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3b9f2531bfca9ef51b37b3061b1fa1c1"} gateway-1 | {"time_local":"24/Jul/2024:16:18:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3b9f2531bfca9ef51b37b3061b1fa1c1"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"3b9f2531bfca9ef51b37b3061b1fa1c1","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwOX0.tBE__bHS8W1STViCLpZRbMxopkn1YItacp5oxSwMhAQ","level":"info","message":"auth send jwt","requestID":"fa7bf99a55faf2697c9f356c65901324"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"fa7bf99a55faf2697c9f356c65901324","responseTime":8,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwOX0.tBE__bHS8W1STViCLpZRbMxopkn1YItacp5oxSwMhAQ","level":"info","message":"auth send jwt","requestID":"f0da1d9b7c6a3aefe86501695476d1ba"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"f0da1d9b7c6a3aefe86501695476d1ba","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"fa7bf99a55faf2697c9f356c65901324"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f0da1d9b7c6a3aefe86501695476d1ba"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":500,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:29Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":500,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.629909,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:29Z"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Received request.","req_id":501,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:29Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"fa7bf99a55faf2697c9f356c65901324","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837909,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwOX0.tBE__bHS8W1STViCLpZRbMxopkn1YItacp5oxSwMhAQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"fa7bf99a55faf2697c9f356c65901324","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Sent response.","req_id":501,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.684542,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:29Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"f0da1d9b7c6a3aefe86501695476d1ba","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837909,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwOX0.tBE__bHS8W1STViCLpZRbMxopkn1YItacp5oxSwMhAQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f0da1d9b7c6a3aefe86501695476d1ba","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47bae28d-a4a6-4192-a968-9d63ce2d1c54","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47bae28d-a4a6-4192-a968-9d63ce2d1c54","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:29.414790088Z"}]},"request_id":"cbf19c45-572d-4fcd-8922-0e163d491f5c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837909.9074268} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fa7bf99a55faf2697c9f356c65901324","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:29.365949726Z"}]},"request_id":"a9ab5721-7ed7-4117-addc-67713e3bd136","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837909.908018} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f0da1d9b7c6a3aefe86501695476d1ba","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2938724e-cea1-49ad-a6bf-10dfd0eaddcd","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837909.9122152} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"fa7bf99a55faf2697c9f356c65901324","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c9fa2632-5778-479a-96eb-157a5fac9465","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837909.9144287} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"f0da1d9b7c6a3aefe86501695476d1ba","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:29.365949726Z"}]},"request_id":"ba07e485-4d5e-4652-975f-4ab87c03deb7","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837909.917223} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f0da1d9b7c6a3aefe86501695476d1ba","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f0da1d9b7c6a3aefe86501695476d1ba"} device-1 | {"level":"info","message":"PATCH /devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338 200 21ms","method":"PATCH","requestID":"f0da1d9b7c6a3aefe86501695476d1ba","responseTime":21,"status":200,"url":"/devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338"} gateway-1 | {"time_local":"24/Jul/2024:16:18:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.032","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"f0da1d9b7c6a3aefe86501695476d1ba"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwOX0.tBE__bHS8W1STViCLpZRbMxopkn1YItacp5oxSwMhAQ","level":"info","message":"auth send jwt","requestID":"19274f00cfc3be18fd02fcf75f43f246"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"19274f00cfc3be18fd02fcf75f43f246","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"19274f00cfc3be18fd02fcf75f43f246"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":502,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:29Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":502,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.678263,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:29Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"19274f00cfc3be18fd02fcf75f43f246","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837909,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwOX0.tBE__bHS8W1STViCLpZRbMxopkn1YItacp5oxSwMhAQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"19274f00cfc3be18fd02fcf75f43f246","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47bae28d-a4a6-4192-a968-9d63ce2d1c54","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47bae28d-a4a6-4192-a968-9d63ce2d1c54","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:29.414790088Z"}]},"request_id":"1d57d6aa-aa6a-4fde-8c6f-dec635c54770","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837909.929439} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fa7bf99a55faf2697c9f356c65901324","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"fa7bf99a55faf2697c9f356c65901324"} gateway-1 | {"time_local":"24/Jul/2024:16:18:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.045","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"fa7bf99a55faf2697c9f356c65901324"} device-1 | {"level":"info","message":"PATCH /devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54 200 35ms","method":"PATCH","requestID":"fa7bf99a55faf2697c9f356c65901324","responseTime":35,"status":200,"url":"/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwOX0.tBE__bHS8W1STViCLpZRbMxopkn1YItacp5oxSwMhAQ","level":"info","message":"auth send jwt","requestID":"a4ec1a24c38c1c76be8c07a92a702e1e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a4ec1a24c38c1c76be8c07a92a702e1e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a4ec1a24c38c1c76be8c07a92a702e1e"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":503,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:29Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"19274f00cfc3be18fd02fcf75f43f246"} gateway-1 | {"time_local":"24/Jul/2024:16:18:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.021","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"19274f00cfc3be18fd02fcf75f43f246"} device-1 | {"level":"info","message":"POST /devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338/websocket 200 16ms","method":"POST","requestID":"19274f00cfc3be18fd02fcf75f43f246","responseTime":16,"status":200,"url":"/devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338/websocket"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":503,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.902359,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:29Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"a4ec1a24c38c1c76be8c07a92a702e1e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837909,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwOX0.tBE__bHS8W1STViCLpZRbMxopkn1YItacp5oxSwMhAQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a4ec1a24c38c1c76be8c07a92a702e1e","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"device 'http://localhost/devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338' connected"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a4ec1a24c38c1c76be8c07a92a702e1e"} gateway-1 | {"time_local":"24/Jul/2024:16:18:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"a4ec1a24c38c1c76be8c07a92a702e1e"} device-1 | {"level":"info","message":"POST /devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54/websocket 200 19ms","method":"POST","requestID":"a4ec1a24c38c1c76be8c07a92a702e1e","responseTime":19,"status":200,"url":"/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwOX0.tBE__bHS8W1STViCLpZRbMxopkn1YItacp5oxSwMhAQ","level":"info","message":"auth send jwt","requestID":"8ac5a334c6424f0102b4dfbac67f04d0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8ac5a334c6424f0102b4dfbac67f04d0","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8ac5a334c6424f0102b4dfbac67f04d0"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":504,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:29Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":504,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.016042,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"8ac5a334c6424f0102b4dfbac67f04d0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837909,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwOX0.tBE__bHS8W1STViCLpZRbMxopkn1YItacp5oxSwMhAQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8ac5a334c6424f0102b4dfbac67f04d0","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:29.365949726Z"}]},"request_id":"ff44eb73-ddeb-43c3-998a-57c9aeada285","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837909.9820347} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8ac5a334c6424f0102b4dfbac67f04d0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8ac5a334c6424f0102b4dfbac67f04d0"} device-1 | {"level":"info","message":"GET /devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338? 200 12ms","method":"GET","requestID":"8ac5a334c6424f0102b4dfbac67f04d0","responseTime":12,"status":200,"url":"/devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338?"} gateway-1 | {"time_local":"24/Jul/2024:16:18:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8ac5a334c6424f0102b4dfbac67f04d0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwOX0.tBE__bHS8W1STViCLpZRbMxopkn1YItacp5oxSwMhAQ","level":"info","message":"auth send jwt","requestID":"9c498319a4cb75c4bf19611cd484c85e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9c498319a4cb75c4bf19611cd484c85e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9c498319a4cb75c4bf19611cd484c85e"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":505,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:29Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":505,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.772111,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"9c498319a4cb75c4bf19611cd484c85e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837909,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkwOX0.tBE__bHS8W1STViCLpZRbMxopkn1YItacp5oxSwMhAQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9c498319a4cb75c4bf19611cd484c85e","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47bae28d-a4a6-4192-a968-9d63ce2d1c54","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47bae28d-a4a6-4192-a968-9d63ce2d1c54","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:29.414790088Z"}]},"request_id":"f617e7a3-2d95-4027-992e-a42fb7a5b229","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837910.0011625} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"9c498319a4cb75c4bf19611cd484c85e","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9c498319a4cb75c4bf19611cd484c85e"} gateway-1 | {"time_local":"24/Jul/2024:16:18:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9c498319a4cb75c4bf19611cd484c85e"} device-1 | {"level":"info","message":"GET /devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54? 200 12ms","method":"GET","requestID":"9c498319a4cb75c4bf19611cd484c85e","responseTime":12,"status":200,"url":"/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxMH0.vtYYceas12kW4FhezhSR7eIcWpwur9gO_pZr2Q2Sl-4","level":"info","message":"auth send jwt","requestID":"fe658c39093bdd571dd9c5904f751a29"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"fe658c39093bdd571dd9c5904f751a29","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"fe658c39093bdd571dd9c5904f751a29"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":506,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:30Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":506,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.878552,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:30Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"fe658c39093bdd571dd9c5904f751a29","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837910,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxMH0.vtYYceas12kW4FhezhSR7eIcWpwur9gO_pZr2Q2Sl-4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fe658c39093bdd571dd9c5904f751a29","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd136073-ca82-4189-b08b-f1454dec4ec5"},"level":"info","message":"Attempting to run experiment","requestID":"fe658c39093bdd571dd9c5904f751a29"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd136073-ca82-4189-b08b-f1454dec4ec5"},"level":"info","message":"Attempting to book experiment","requestID":"fe658c39093bdd571dd9c5904f751a29"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd136073-ca82-4189-b08b-f1454dec4ec5"},"level":"info","message":"Successfully booked experiment","requestID":"fe658c39093bdd571dd9c5904f751a29"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5d663e40-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5d668c60-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":507,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:30Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":507,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.135415,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5d663e40-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837910,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxMH0.vtYYceas12kW4FhezhSR7eIcWpwur9gO_pZr2Q2Sl-4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5d663e40-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Received request.","req_id":508,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Sent response.","req_id":508,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.076968,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5d668c60-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837910,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxMH0.vtYYceas12kW4FhezhSR7eIcWpwur9gO_pZr2Q2Sl-4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5d668c60-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:29.365949726Z"}]},"request_id":"7c6d19d8-50d3-49f3-ac46-c33b17e9f0da","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837910.0647252} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"5d663e40-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47bae28d-a4a6-4192-a968-9d63ce2d1c54","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47bae28d-a4a6-4192-a968-9d63ce2d1c54","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:29.414790088Z"}]},"request_id":"c2e54424-a1f4-4bd5-ba59-5d458a5cab4c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837910.0665355} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5d668c60-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5d663e40-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338? 200 21ms","method":"GET","requestID":"5d663e40-49d8-11ef-9fe8-9113c2c8d024","responseTime":21,"status":200,"url":"/devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5d668c60-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54? 200 21ms","method":"GET","requestID":"5d668c60-49d8-11ef-9fe8-9113c2c8d024","responseTime":21,"status":200,"url":"/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd136073-ca82-4189-b08b-f1454dec4ec5"},"level":"info","message":"Setting up experiment","requestID":"fe658c39093bdd571dd9c5904f751a29"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd136073-ca82-4189-b08b-f1454dec4ec5"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"fe658c39093bdd571dd9c5904f751a29"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd136073-ca82-4189-b08b-f1454dec4ec5"},"level":"info","message":"Successfully locked booking for experiment","requestID":"fe658c39093bdd571dd9c5904f751a29"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd136073-ca82-4189-b08b-f1454dec4ec5"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"fe658c39093bdd571dd9c5904f751a29"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd136073-ca82-4189-b08b-f1454dec4ec5"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"fe658c39093bdd571dd9c5904f751a29"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd136073-ca82-4189-b08b-f1454dec4ec5"},"level":"info","message":"Attempting to update booking for experiment","requestID":"fe658c39093bdd571dd9c5904f751a29"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd136073-ca82-4189-b08b-f1454dec4ec5"},"level":"info","message":"Successfully updated booking for experiment","requestID":"fe658c39093bdd571dd9c5904f751a29"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd136073-ca82-4189-b08b-f1454dec4ec5"},"level":"info","message":"Successfully set up experiment","requestID":"fe658c39093bdd571dd9c5904f751a29"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5d72e870-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5d733690-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5d7384b0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":509,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:30Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":509,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.45627,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:30Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd136073-ca82-4189-b08b-f1454dec4ec5"},"level":"info","message":"Successfully running experiment","requestID":"fe658c39093bdd571dd9c5904f751a29"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5d72e870-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837910,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxMH0.vtYYceas12kW4FhezhSR7eIcWpwur9gO_pZr2Q2Sl-4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5d72e870-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Received request.","req_id":510,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Sent response.","req_id":510,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.216613,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58274","level":"info","msg":"Received request.","req_id":511,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5d733690-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837910,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxMH0.vtYYceas12kW4FhezhSR7eIcWpwur9gO_pZr2Q2Sl-4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5d733690-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58274","level":"info","msg":"Sent response.","req_id":511,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.452209,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:30Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a8c05193-66db-4298-a6f8-5645a3bae30e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837910.146682} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5d7384b0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","object_type":"device","rebac_allow":false,"scope_allow":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":"5d7384b0-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:29.365949726Z"}]},"request_id":"2adde59f-c34a-49e6-af40-d3e883152602","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837910.1494145} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47bae28d-a4a6-4192-a968-9d63ce2d1c54","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47bae28d-a4a6-4192-a968-9d63ce2d1c54","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:29.414790088Z"}]},"request_id":"cd85be3d-d9e8-4700-978e-339fd0336898","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837910.1508324} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"5d72e870-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5d733690-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5d7384b0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338/signaling 200 17ms","method":"POST","requestID":"5d7384b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":17,"status":200,"url":"/devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5d72e870-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338? 200 23ms","method":"GET","requestID":"5d72e870-49d8-11ef-9fe8-9113c2c8d024","responseTime":23,"status":200,"url":"/devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5d733690-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54? 200 22ms","method":"GET","requestID":"5d733690-49d8-11ef-9fe8-9113c2c8d024","responseTime":22,"status":200,"url":"/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5d76b900-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5d770720-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":512,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:30Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47bae28d-a4a6-4192-a968-9d63ce2d1c54","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ac60b57e-53bb-4c6c-b58e-d734de57171c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837910.165757} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffd136073-ca82-4189-b08b-f1454dec4ec5#owner@http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffd136073-ca82-4189-b08b-f1454dec4ec5","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"438fba30-37d1-49ae-b24f-bdad2cf12729","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837910.1661437} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cd462ea0-6ce1-433c-9715-02b7a928c6b2","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837910.1666057} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":512,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.038811,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Received request.","req_id":513,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:30Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"fe658c39093bdd571dd9c5904f751a29","responseTime":25,"status":200,"url":"/relations/update"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5d76b900-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54","object_type":"device","rebac_allow":false,"scope_allow":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":"5d76b900-49d8-11ef-9fe8-9113c2c8d024","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Sent response.","req_id":513,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.774188,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:30Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"361219c2-ec26-4bfb-8aee-7898b2cc0d43","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837910.1695073} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5d770720-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","object_type":"device","rebac_allow":false,"scope_allow":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":"5d770720-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/fd136073-ca82-4189-b08b-f1454dec4ec5","user":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"fe658c39093bdd571dd9c5904f751a29"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5d76b900-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54/signaling 200 18ms","method":"POST","requestID":"5d76b900-49d8-11ef-9fe8-9113c2c8d024","responseTime":18,"status":200,"url":"/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54/signaling"} gateway-1 | {"time_local":"24/Jul/2024:16:18:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1295","request_time":"0.173","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fe658c39093bdd571dd9c5904f751a29"} experiment-1 | {"level":"info","message":"POST /experiments? 201 167ms","method":"POST","requestID":"fe658c39093bdd571dd9c5904f751a29","responseTime":167,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5d770720-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338/signaling 200 17ms","method":"POST","requestID":"5d770720-49d8-11ef-9fe8-9113c2c8d024","responseTime":17,"status":200,"url":"/devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5d79ed50-49d8-11ef-9fe8-9113c2c8d024"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxMH0.vtYYceas12kW4FhezhSR7eIcWpwur9gO_pZr2Q2Sl-4","level":"info","message":"auth send jwt","requestID":"56d47852c97155e3a1634a1ce4c5f114"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"56d47852c97155e3a1634a1ce4c5f114","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":514,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:30Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"56d47852c97155e3a1634a1ce4c5f114"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47bae28d-a4a6-4192-a968-9d63ce2d1c54","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"88f2b253-7fd9-44bd-8257-849821ad2e70","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837910.1864543} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":514,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.354993,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Received request.","req_id":515,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5d79ed50-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5d79ed50-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Sent response.","req_id":515,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.562493,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"56d47852c97155e3a1634a1ce4c5f114","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837910,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxMH0.vtYYceas12kW4FhezhSR7eIcWpwur9gO_pZr2Q2Sl-4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"56d47852c97155e3a1634a1ce4c5f114","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5d79ed50-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54/signaling 200 10ms","method":"POST","requestID":"5d79ed50-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54/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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:29.365949726Z"}]},"request_id":"228c9e3d-9ada-494b-ab34-c38051cb9852","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837910.1922467} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd136073-ca82-4189-b08b-f1454dec4ec5"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"fe658c39093bdd571dd9c5904f751a29"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd136073-ca82-4189-b08b-f1454dec4ec5"},"level":"info","message":"Building connection plan","requestID":"fe658c39093bdd571dd9c5904f751a29"} 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":"df74cbc5-0451-4e9f-b328-4e1ad88fb5ee"},{"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":"5c7fb3bb-1d4b-4002-b893-05022008232b"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"31142094-2593-442b-9768-0526b152152f"}]},"level":"info","message":"Built pairwise service configurations","requestID":"fe658c39093bdd571dd9c5904f751a29"} experiment-1 | {"data":{"connectionPlan":[{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"fe658c39093bdd571dd9c5904f751a29"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"56d47852c97155e3a1634a1ce4c5f114","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"5d7c1030-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"56d47852c97155e3a1634a1ce4c5f114"} gateway-1 | {"time_local":"24/Jul/2024:16:18:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"56d47852c97155e3a1634a1ce4c5f114"} device-1 | {"level":"info","message":"GET /devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338? 200 13ms","method":"GET","requestID":"56d47852c97155e3a1634a1ce4c5f114","responseTime":13,"status":200,"url":"/devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338?"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":516,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:30Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":516,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.005724,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:30Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5d7c1030-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837910,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxMH0.vtYYceas12kW4FhezhSR7eIcWpwur9gO_pZr2Q2Sl-4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5d7c1030-49d8-11ef-9fe8-9113c2c8d024","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxMH0.vtYYceas12kW4FhezhSR7eIcWpwur9gO_pZr2Q2Sl-4","level":"info","message":"auth send jwt","requestID":"0eaecd9ad6913fad18d244c460d81c0c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0eaecd9ad6913fad18d244c460d81c0c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0eaecd9ad6913fad18d244c460d81c0c"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":517,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:30Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":517,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.74735,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"0eaecd9ad6913fad18d244c460d81c0c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837910,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxMH0.vtYYceas12kW4FhezhSR7eIcWpwur9gO_pZr2Q2Sl-4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0eaecd9ad6913fad18d244c460d81c0c","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","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%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"ce5da7ba-7bc2-4465-8611-eb45cd4a55c9","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837910.2092729} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"54ae7248-2ddf-4448-bebd-49ad62c57029","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837910.209611} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"5d7c1030-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47bae28d-a4a6-4192-a968-9d63ce2d1c54","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47bae28d-a4a6-4192-a968-9d63ce2d1c54","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:29.414790088Z"}]},"request_id":"0712a547-9509-4431-bd27-a99ef8adfd29","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837910.212991} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"0eaecd9ad6913fad18d244c460d81c0c","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"5d7c1030-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"5d7c1030-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/ac4ecc2b-7e07-43c4-8309-a7810f35d03c'","requestID":"5d7c1030-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/ac4ecc2b-7e07-43c4-8309-a7810f35d03c'","requestID":"5d7c1030-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"5d7c1030-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 30ms","method":"POST","requestID":"5d7c1030-49d8-11ef-9fe8-9113c2c8d024","responseTime":30,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0eaecd9ad6913fad18d244c460d81c0c"} gateway-1 | {"time_local":"24/Jul/2024:16:18:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.028","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0eaecd9ad6913fad18d244c460d81c0c"} device-1 | {"level":"info","message":"GET /devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54? 200 23ms","method":"GET","requestID":"0eaecd9ad6913fad18d244c460d81c0c","responseTime":23,"status":200,"url":"/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"5d7c1030-49d8-11ef-9fe8-9113c2c8d024"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd136073-ca82-4189-b08b-f1454dec4ec5"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"fe658c39093bdd571dd9c5904f751a29"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5d897db0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":518,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:30Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c7683d16-cb04-43f3-b6b5-b8be04adf8dd","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837910.2892973} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":518,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.355429,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5d897db0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","object_type":"device","rebac_allow":false,"scope_allow":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":"5d897db0-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5d897db0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338/signaling 200 12ms","method":"POST","requestID":"5d897db0-49d8-11ef-9fe8-9113c2c8d024","responseTime":12,"status":200,"url":"/devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5d8bc7a0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":519,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:30Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47bae28d-a4a6-4192-a968-9d63ce2d1c54","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"52d68a2e-cb3e-4573-a543-a0180e8ab9b2","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837910.3046525} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":519,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.770517,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5d8bc7a0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54","object_type":"device","rebac_allow":false,"scope_allow":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":"5d8bc7a0-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5d8bc7a0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54/signaling 200 13ms","method":"POST","requestID":"5d8bc7a0-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54/signaling"} device-1 | {"device":"47bae28d-a4a6-4192-a968-9d63ce2d1c54","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"ac4ecc2b-7e07-43c4-8309-a7810f35d03c","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"ac4ecc2b-7e07-43c4-8309-a7810f35d03c","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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/ac4ecc2b-7e07-43c4-8309-a7810f35d03c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ac4ecc2b-7e07-43c4-8309-a7810f35d03c","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1fedf14e668599bbddf5dafdd22958d6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"1fedf14e668599bbddf5dafdd22958d6","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/ac4ecc2b-7e07-43c4-8309-a7810f35d03c"}}},"level":"info","message":"received a callback","requestID":"1fedf14e668599bbddf5dafdd22958d6"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"1fedf14e668599bbddf5dafdd22958d6","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"1fedf14e668599bbddf5dafdd22958d6"} device-1 | {"device":"47bae28d-a4a6-4192-a968-9d63ce2d1c54","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"47bae28d-a4a6-4192-a968-9d63ce2d1c54","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"47bae28d-a4a6-4192-a968-9d63ce2d1c54","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"ac4ecc2b-7e07-43c4-8309-a7810f35d03c","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"47bae28d-a4a6-4192-a968-9d63ce2d1c54","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"47bae28d-a4a6-4192-a968-9d63ce2d1c54","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"ac4ecc2b-7e07-43c4-8309-a7810f35d03c","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/ac4ecc2b-7e07-43c4-8309-a7810f35d03c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ac4ecc2b-7e07-43c4-8309-a7810f35d03c","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2573a1782e63e9d775dffe1c67a9a8a7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"2573a1782e63e9d775dffe1c67a9a8a7","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/ac4ecc2b-7e07-43c4-8309-a7810f35d03c"}}},"level":"info","message":"received a callback","requestID":"2573a1782e63e9d775dffe1c67a9a8a7"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"5ec55910-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":520,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:32Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fac4ecc2b-7e07-43c4-8309-a7810f35d03c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bc2df50a-9b74-4d24-ba86-bc3e66bc3d51","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837912.3603818} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":520,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.614836,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ac4ecc2b-7e07-43c4-8309-a7810f35d03c","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5ec55910-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/ac4ecc2b-7e07-43c4-8309-a7810f35d03c","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":"5ec55910-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"5ec55910-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /peerconnections/ac4ecc2b-7e07-43c4-8309-a7810f35d03c 200 13ms","method":"GET","requestID":"5ec55910-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/peerconnections/ac4ecc2b-7e07-43c4-8309-a7810f35d03c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 41ms","method":"POST","requestID":"2573a1782e63e9d775dffe1c67a9a8a7","responseTime":41,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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.045","http_referrer":"","http_user_agent":"node-fetch","requestID":"2573a1782e63e9d775dffe1c67a9a8a7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5ecad750-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":521,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:32Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"298c6b0f-2d93-4b48-953b-0dbb3762b068","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837912.3954604} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":521,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.258904,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5ecad750-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5ecad750-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5ecad750-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338/signaling 200 12ms","method":"POST","requestID":"5ecad750-49d8-11ef-9fe8-9113c2c8d024","responseTime":12,"status":200,"url":"/devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5ecd2140-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":522,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:32Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47bae28d-a4a6-4192-a968-9d63ce2d1c54","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1e5b056f-f8fb-4883-b4de-56a0882bcd17","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837912.40938} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":522,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.307926,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5ecd2140-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5ecd2140-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5ecd2140-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54/signaling 200 9ms","method":"POST","requestID":"5ecd2140-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxMn0.qzbBLit3Xr-dsrmbLv7GNFo5xnqkgmXKzcDI5hDeCtc","level":"info","message":"auth send jwt","requestID":"0c6bd54c0bc5c7349bbce07014e28ea0"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"0c6bd54c0bc5c7349bbce07014e28ea0","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/fd136073-ca82-4189-b08b-f1454dec4ec5","requestID":"0c6bd54c0bc5c7349bbce07014e28ea0"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":523,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:32Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":523,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":2.495505,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/fd136073-ca82-4189-b08b-f1454dec4ec5","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"0c6bd54c0bc5c7349bbce07014e28ea0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/fd136073-ca82-4189-b08b-f1454dec4ec5","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837912,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxMn0.qzbBLit3Xr-dsrmbLv7GNFo5xnqkgmXKzcDI5hDeCtc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0c6bd54c0bc5c7349bbce07014e28ea0","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/fd136073-ca82-4189-b08b-f1454dec4ec5","requestID":"0c6bd54c0bc5c7349bbce07014e28ea0"} experiment-1 | {"level":"info","message":"GET /experiments/fd136073-ca82-4189-b08b-f1454dec4ec5 200 16ms","method":"GET","requestID":"0c6bd54c0bc5c7349bbce07014e28ea0","responseTime":16,"status":200,"url":"/experiments/fd136073-ca82-4189-b08b-f1454dec4ec5"} gateway-1 | {"time_local":"24/Jul/2024:16:18:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/fd136073-ca82-4189-b08b-f1454dec4ec5 HTTP/1.1","status": "200","body_bytes_sent":"1368","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0c6bd54c0bc5c7349bbce07014e28ea0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxMn0.qzbBLit3Xr-dsrmbLv7GNFo5xnqkgmXKzcDI5hDeCtc","level":"info","message":"auth send jwt","requestID":"561d181bc9502fa53bac5ad33113b3ce"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"561d181bc9502fa53bac5ad33113b3ce","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/fd136073-ca82-4189-b08b-f1454dec4ec5","requestID":"561d181bc9502fa53bac5ad33113b3ce"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":524,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:32Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":524,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.140112,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:32Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/fd136073-ca82-4189-b08b-f1454dec4ec5","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"561d181bc9502fa53bac5ad33113b3ce","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/fd136073-ca82-4189-b08b-f1454dec4ec5","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837912,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxMn0.qzbBLit3Xr-dsrmbLv7GNFo5xnqkgmXKzcDI5hDeCtc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"561d181bc9502fa53bac5ad33113b3ce","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd136073-ca82-4189-b08b-f1454dec4ec5"},"level":"info","message":"Attempting to finish experiment","requestID":"561d181bc9502fa53bac5ad33113b3ce"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"5ed9f280-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":525,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:32Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":525,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.246267,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:32Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ac4ecc2b-7e07-43c4-8309-a7810f35d03c","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5ed9f280-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:http://localhost/peerconnections/ac4ecc2b-7e07-43c4-8309-a7810f35d03c","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837912,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxMn0.qzbBLit3Xr-dsrmbLv7GNFo5xnqkgmXKzcDI5hDeCtc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5ed9f280-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"device":"47bae28d-a4a6-4192-a968-9d63ce2d1c54","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"47bae28d-a4a6-4192-a968-9d63ce2d1c54","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"47bae28d-a4a6-4192-a968-9d63ce2d1c54","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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/ac4ecc2b-7e07-43c4-8309-a7810f35d03c' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/ac4ecc2b-7e07-43c4-8309-a7810f35d03c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ac4ecc2b-7e07-43c4-8309-a7810f35d03c","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fac4ecc2b-7e07-43c4-8309-a7810f35d03c': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fac4ecc2b-7e07-43c4-8309-a7810f35d03c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"291f6128-b622-49b8-8b12-491088f3bf0e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837912.5147321} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2c57ce60d99c491ceadd3f817e20322a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2c57ce60d99c491ceadd3f817e20322a","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"48e92dd5-8339-4c29-9b0b-08d62692f9dc","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837912.515371} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"5ed9f280-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a8b7f84b485c2df766f1e992164b7b36","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/ac4ecc2b-7e07-43c4-8309-a7810f35d03c"}}},"level":"info","message":"received a callback","requestID":"2c57ce60d99c491ceadd3f817e20322a"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a8b7f84b485c2df766f1e992164b7b36","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/ac4ecc2b-7e07-43c4-8309-a7810f35d03c"}}},"level":"info","message":"received a callback","requestID":"a8b7f84b485c2df766f1e992164b7b36"} device-1 | {"data":{"peerconnection":"ac4ecc2b-7e07-43c4-8309-a7810f35d03c","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"5ed9f280-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"DELETE /peerconnections/ac4ecc2b-7e07-43c4-8309-a7810f35d03c 204 51ms","method":"DELETE","requestID":"5ed9f280-49d8-11ef-9fe8-9113c2c8d024","responseTime":51,"status":204,"url":"/peerconnections/ac4ecc2b-7e07-43c4-8309-a7810f35d03c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd136073-ca82-4189-b08b-f1454dec4ec5"},"level":"info","message":"Successfully finished experiment","requestID":"561d181bc9502fa53bac5ad33113b3ce"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5ee53d20-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":526,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:32Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6a1839d5-3507-475e-bc0b-8cd725943312","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837912.5695713} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":526,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.359652,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5ee53d20-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338","object_type":"device","rebac_allow":false,"scope_allow":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":"5ee53d20-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5ee53d20-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338/signaling 200 14ms","method":"POST","requestID":"5ee53d20-49d8-11ef-9fe8-9113c2c8d024","responseTime":14,"status":200,"url":"/devices/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338/signaling"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffd136073-ca82-4189-b08b-f1454dec4ec5': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffd136073-ca82-4189-b08b-f1454dec4ec5","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"8e9905fe-6907-4eaa-8df2-2622d60e5fca","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837912.5770586} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"95cbd2d7-13ac-44dc-97a6-c2d68d20b6fa","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837912.5774236} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5ee7d530-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"561d181bc9502fa53bac5ad33113b3ce","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":527,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:32Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47bae28d-a4a6-4192-a968-9d63ce2d1c54","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6de9dcd2-9e1a-4be2-b397-f1e8d5d84a9d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837912.5854657} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":527,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.077418,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5ee7d530-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5ee7d530-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5ee7d530-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54/signaling 200 12ms","method":"POST","requestID":"5ee7d530-49d8-11ef-9fe8-9113c2c8d024","responseTime":12,"status":200,"url":"/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/fd136073-ca82-4189-b08b-f1454dec4ec5","requestID":"561d181bc9502fa53bac5ad33113b3ce"} gateway-1 | {"time_local":"24/Jul/2024:16:18:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/fd136073-ca82-4189-b08b-f1454dec4ec5 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":"561d181bc9502fa53bac5ad33113b3ce"} experiment-1 | {"level":"info","message":"DELETE /experiments/fd136073-ca82-4189-b08b-f1454dec4ec5 204 164ms","method":"DELETE","requestID":"561d181bc9502fa53bac5ad33113b3ce","responseTime":164,"status":204,"url":"/experiments/fd136073-ca82-4189-b08b-f1454dec4ec5"} gateway-1 | {"time_local":"24/Jul/2024:16:18:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2747","request_time":"2.692","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"d0958df912f0df89621a9b2ed30d6225"} gateway-1 | {"time_local":"24/Jul/2024:16:18:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2745","request_time":"2.677","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"aab37ab66258b72e7cc763f7c01ee364"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 119ms","method":"POST","requestID":"2c57ce60d99c491ceadd3f817e20322a","responseTime":119,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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.124","http_referrer":"","http_user_agent":"node-fetch","requestID":"2c57ce60d99c491ceadd3f817e20322a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 117ms","method":"POST","requestID":"a8b7f84b485c2df766f1e992164b7b36","responseTime":117,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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.125","http_referrer":"","http_user_agent":"node-fetch","requestID":"a8b7f84b485c2df766f1e992164b7b36"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxMn0.qzbBLit3Xr-dsrmbLv7GNFo5xnqkgmXKzcDI5hDeCtc","level":"info","message":"auth send jwt","requestID":"1305fef27c23adaa1ea47d15e1509e64"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1305fef27c23adaa1ea47d15e1509e64","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1305fef27c23adaa1ea47d15e1509e64"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/47bae28d-a4a6-4192-a968-9d63ce2d1c54' closed"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":528,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:32Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":528,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.10103,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:32Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"1305fef27c23adaa1ea47d15e1509e64","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837912,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxMn0.qzbBLit3Xr-dsrmbLv7GNFo5xnqkgmXKzcDI5hDeCtc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1305fef27c23adaa1ea47d15e1509e64","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/991c7bd9-e8a9-4c5c-9c93-2a3b98dd0338' 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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb73a945-ffe1-4bca-b4da-97b500dbc973","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4fb98ca5-9419-43a4-a66d-f62db23d8cc4","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837912.671016} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1305fef27c23adaa1ea47d15e1509e64","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b4a69743-25df-49ba-80f2-1945cb95d76e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837912.6775508} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"1305fef27c23adaa1ea47d15e1509e64","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb73a945-ffe1-4bca-b4da-97b500dbc973","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"d14abe51-528a-4df2-83d1-c6744dbd0c80","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837912.6895354} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"de679cfa-270b-4cab-82b7-af756c203ee7","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837912.6899033} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"1305fef27c23adaa1ea47d15e1509e64","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb73a945-ffe1-4bca-b4da-97b500dbc973","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb73a945-ffe1-4bca-b4da-97b500dbc973","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:32.689511473Z"}]},"request_id":"e3063a8a-55cb-4172-9408-d71d0a6f56df","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837912.6951914} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1305fef27c23adaa1ea47d15e1509e64","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1305fef27c23adaa1ea47d15e1509e64"} gateway-1 | {"time_local":"24/Jul/2024:16:18:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.061","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1305fef27c23adaa1ea47d15e1509e64"} device-1 | {"level":"info","message":"POST /devices? 201 54ms","method":"POST","requestID":"1305fef27c23adaa1ea47d15e1509e64","responseTime":54,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxMn0.qzbBLit3Xr-dsrmbLv7GNFo5xnqkgmXKzcDI5hDeCtc","level":"info","message":"auth send jwt","requestID":"5c8c2c877120ef2100dea964e1a62f50"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5c8c2c877120ef2100dea964e1a62f50","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"5c8c2c877120ef2100dea964e1a62f50"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":529,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:32Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":529,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.817294,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:32Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5c8c2c877120ef2100dea964e1a62f50","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837912,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxMn0.qzbBLit3Xr-dsrmbLv7GNFo5xnqkgmXKzcDI5hDeCtc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5c8c2c877120ef2100dea964e1a62f50","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fda00000c-265c-4595-8f60-8bac6bb9f84e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0e8c3dfe-7dc6-4b84-8af8-9bd4f112a523","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837912.720905} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"5c8c2c877120ef2100dea964e1a62f50","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9471ef4d-12bd-4e85-ba05-ce71bc56d8a0","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837912.7256632} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"5c8c2c877120ef2100dea964e1a62f50","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fda00000c-265c-4595-8f60-8bac6bb9f84e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"461c8420-7056-4f41-b772-a4c7d10511cc","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837912.7424326} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"21017496-347f-4a30-a627-8c39a158c14b","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837912.7427118} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"5c8c2c877120ef2100dea964e1a62f50","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fda00000c-265c-4595-8f60-8bac6bb9f84e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fda00000c-265c-4595-8f60-8bac6bb9f84e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:32.742406167Z"}]},"request_id":"48271702-bebd-4f67-ad3a-439220a232b6","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837912.7480927} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5c8c2c877120ef2100dea964e1a62f50","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"5c8c2c877120ef2100dea964e1a62f50"} gateway-1 | {"time_local":"24/Jul/2024:16:18:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5c8c2c877120ef2100dea964e1a62f50"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"5c8c2c877120ef2100dea964e1a62f50","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxM30.JDcSbZc6DlqPuZnwXEDyG1iyy5DCiDWZb0_z3PPB6Us","level":"info","message":"auth send jwt","requestID":"97e515958d9781292c58897e5286b5ad"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"97e515958d9781292c58897e5286b5ad","responseTime":5,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxM30.JDcSbZc6DlqPuZnwXEDyG1iyy5DCiDWZb0_z3PPB6Us","level":"info","message":"auth send jwt","requestID":"8b852ae0121b3fe6ecb9ba372e0ca19f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8b852ae0121b3fe6ecb9ba372e0ca19f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"97e515958d9781292c58897e5286b5ad"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"8b852ae0121b3fe6ecb9ba372e0ca19f"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":530,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:33Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":530,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.611633,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:33Z"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Received request.","req_id":531,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:33Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/db73a945-ffe1-4bca-b4da-97b500dbc973","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"97e515958d9781292c58897e5286b5ad","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/db73a945-ffe1-4bca-b4da-97b500dbc973","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837913,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxM30.JDcSbZc6DlqPuZnwXEDyG1iyy5DCiDWZb0_z3PPB6Us"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"97e515958d9781292c58897e5286b5ad","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Sent response.","req_id":531,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.532994,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:33Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/da00000c-265c-4595-8f60-8bac6bb9f84e","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"8b852ae0121b3fe6ecb9ba372e0ca19f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/da00000c-265c-4595-8f60-8bac6bb9f84e","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837913,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxM30.JDcSbZc6DlqPuZnwXEDyG1iyy5DCiDWZb0_z3PPB6Us"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"8b852ae0121b3fe6ecb9ba372e0ca19f","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb73a945-ffe1-4bca-b4da-97b500dbc973","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb73a945-ffe1-4bca-b4da-97b500dbc973","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:32.689511473Z"}]},"request_id":"1a7a1b6d-dc4c-41ec-8fff-7e3eb3f469d6","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837913.2317967} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"97e515958d9781292c58897e5286b5ad","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fda00000c-265c-4595-8f60-8bac6bb9f84e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fda00000c-265c-4595-8f60-8bac6bb9f84e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:32.742406167Z"}]},"request_id":"c5a1c5ad-b300-459a-9839-c7862515fb68","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837913.2323112} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"8b852ae0121b3fe6ecb9ba372e0ca19f","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"574c7f44-cb3d-40cc-91d4-02aca917ce32","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837913.2361572} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"97e515958d9781292c58897e5286b5ad","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"da46c6b5-0728-4ba7-8833-2f8b88ba1923","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837913.2372477} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"8b852ae0121b3fe6ecb9ba372e0ca19f","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fda00000c-265c-4595-8f60-8bac6bb9f84e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fda00000c-265c-4595-8f60-8bac6bb9f84e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:32.742406167Z"}]},"request_id":"af5c70be-e51a-448a-8231-e0f373ac0f9e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837913.2400649} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"8b852ae0121b3fe6ecb9ba372e0ca19f","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"8b852ae0121b3fe6ecb9ba372e0ca19f"} gateway-1 | {"time_local":"24/Jul/2024:16:18:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/da00000c-265c-4595-8f60-8bac6bb9f84e HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.025","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"8b852ae0121b3fe6ecb9ba372e0ca19f"} device-1 | {"level":"info","message":"PATCH /devices/da00000c-265c-4595-8f60-8bac6bb9f84e 200 18ms","method":"PATCH","requestID":"8b852ae0121b3fe6ecb9ba372e0ca19f","responseTime":18,"status":200,"url":"/devices/da00000c-265c-4595-8f60-8bac6bb9f84e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxM30.JDcSbZc6DlqPuZnwXEDyG1iyy5DCiDWZb0_z3PPB6Us","level":"info","message":"auth send jwt","requestID":"46c1ef453720b128662df3ed069920d4"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"46c1ef453720b128662df3ed069920d4","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"46c1ef453720b128662df3ed069920d4"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":532,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:33Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":532,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.650913,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:33Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/da00000c-265c-4595-8f60-8bac6bb9f84e","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"46c1ef453720b128662df3ed069920d4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/da00000c-265c-4595-8f60-8bac6bb9f84e","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837913,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxM30.JDcSbZc6DlqPuZnwXEDyG1iyy5DCiDWZb0_z3PPB6Us"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"46c1ef453720b128662df3ed069920d4","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb73a945-ffe1-4bca-b4da-97b500dbc973","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb73a945-ffe1-4bca-b4da-97b500dbc973","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:32.689511473Z"}]},"request_id":"7ec110ed-ad99-43e2-930b-b2cd11876f00","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837913.2509563} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"97e515958d9781292c58897e5286b5ad","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"97e515958d9781292c58897e5286b5ad"} gateway-1 | {"time_local":"24/Jul/2024:16:18:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/db73a945-ffe1-4bca-b4da-97b500dbc973 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.037","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"97e515958d9781292c58897e5286b5ad"} device-1 | {"level":"info","message":"PATCH /devices/db73a945-ffe1-4bca-b4da-97b500dbc973 200 32ms","method":"PATCH","requestID":"97e515958d9781292c58897e5286b5ad","responseTime":32,"status":200,"url":"/devices/db73a945-ffe1-4bca-b4da-97b500dbc973"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxM30.JDcSbZc6DlqPuZnwXEDyG1iyy5DCiDWZb0_z3PPB6Us","level":"info","message":"auth send jwt","requestID":"5b8ecfc86a1b259a033a3051c2f58b7d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5b8ecfc86a1b259a033a3051c2f58b7d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"5b8ecfc86a1b259a033a3051c2f58b7d"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":533,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:33Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":533,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.736109,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:33Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/db73a945-ffe1-4bca-b4da-97b500dbc973","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5b8ecfc86a1b259a033a3051c2f58b7d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/db73a945-ffe1-4bca-b4da-97b500dbc973","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837913,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxM30.JDcSbZc6DlqPuZnwXEDyG1iyy5DCiDWZb0_z3PPB6Us"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5b8ecfc86a1b259a033a3051c2f58b7d","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"46c1ef453720b128662df3ed069920d4"} gateway-1 | {"time_local":"24/Jul/2024:16:18:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/da00000c-265c-4595-8f60-8bac6bb9f84e/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.021","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"46c1ef453720b128662df3ed069920d4"} device-1 | {"level":"info","message":"POST /devices/da00000c-265c-4595-8f60-8bac6bb9f84e/websocket 200 18ms","method":"POST","requestID":"46c1ef453720b128662df3ed069920d4","responseTime":18,"status":200,"url":"/devices/da00000c-265c-4595-8f60-8bac6bb9f84e/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"5b8ecfc86a1b259a033a3051c2f58b7d"} gateway-1 | {"time_local":"24/Jul/2024:16:18:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/db73a945-ffe1-4bca-b4da-97b500dbc973/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.018","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"5b8ecfc86a1b259a033a3051c2f58b7d"} device-1 | {"level":"info","message":"POST /devices/db73a945-ffe1-4bca-b4da-97b500dbc973/websocket 200 15ms","method":"POST","requestID":"5b8ecfc86a1b259a033a3051c2f58b7d","responseTime":15,"status":200,"url":"/devices/db73a945-ffe1-4bca-b4da-97b500dbc973/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/da00000c-265c-4595-8f60-8bac6bb9f84e' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/db73a945-ffe1-4bca-b4da-97b500dbc973' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxM30.JDcSbZc6DlqPuZnwXEDyG1iyy5DCiDWZb0_z3PPB6Us","level":"info","message":"auth send jwt","requestID":"fad7828a708c17274f65cd84694d57b4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"fad7828a708c17274f65cd84694d57b4","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fad7828a708c17274f65cd84694d57b4"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":534,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:33Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":534,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.761046,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/db73a945-ffe1-4bca-b4da-97b500dbc973","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"fad7828a708c17274f65cd84694d57b4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/db73a945-ffe1-4bca-b4da-97b500dbc973","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837913,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxM30.JDcSbZc6DlqPuZnwXEDyG1iyy5DCiDWZb0_z3PPB6Us"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"fad7828a708c17274f65cd84694d57b4","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb73a945-ffe1-4bca-b4da-97b500dbc973","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb73a945-ffe1-4bca-b4da-97b500dbc973","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:32.689511473Z"}]},"request_id":"2cc221a7-a820-4b62-889a-d676f3285981","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837913.3056257} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"fad7828a708c17274f65cd84694d57b4","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fad7828a708c17274f65cd84694d57b4"} gateway-1 | {"time_local":"24/Jul/2024:16:18:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/db73a945-ffe1-4bca-b4da-97b500dbc973? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fad7828a708c17274f65cd84694d57b4"} device-1 | {"level":"info","message":"GET /devices/db73a945-ffe1-4bca-b4da-97b500dbc973? 200 11ms","method":"GET","requestID":"fad7828a708c17274f65cd84694d57b4","responseTime":11,"status":200,"url":"/devices/db73a945-ffe1-4bca-b4da-97b500dbc973?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxM30.JDcSbZc6DlqPuZnwXEDyG1iyy5DCiDWZb0_z3PPB6Us","level":"info","message":"auth send jwt","requestID":"5579ef144e5a1aa39a579f6c96e3e5a7"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"5579ef144e5a1aa39a579f6c96e3e5a7","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5579ef144e5a1aa39a579f6c96e3e5a7"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":535,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:33Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":535,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.713362,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/da00000c-265c-4595-8f60-8bac6bb9f84e","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5579ef144e5a1aa39a579f6c96e3e5a7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/da00000c-265c-4595-8f60-8bac6bb9f84e","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837913,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxM30.JDcSbZc6DlqPuZnwXEDyG1iyy5DCiDWZb0_z3PPB6Us"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5579ef144e5a1aa39a579f6c96e3e5a7","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fda00000c-265c-4595-8f60-8bac6bb9f84e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fda00000c-265c-4595-8f60-8bac6bb9f84e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:32.742406167Z"}]},"request_id":"9a78c995-b0ff-4f6b-811f-682d3169e909","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837913.3214874} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"5579ef144e5a1aa39a579f6c96e3e5a7","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5579ef144e5a1aa39a579f6c96e3e5a7"} gateway-1 | {"time_local":"24/Jul/2024:16:18:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/da00000c-265c-4595-8f60-8bac6bb9f84e? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5579ef144e5a1aa39a579f6c96e3e5a7"} device-1 | {"level":"info","message":"GET /devices/da00000c-265c-4595-8f60-8bac6bb9f84e? 200 10ms","method":"GET","requestID":"5579ef144e5a1aa39a579f6c96e3e5a7","responseTime":10,"status":200,"url":"/devices/da00000c-265c-4595-8f60-8bac6bb9f84e?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxM30.JDcSbZc6DlqPuZnwXEDyG1iyy5DCiDWZb0_z3PPB6Us","level":"info","message":"auth send jwt","requestID":"7eeec2bd1e912bdd485dd3d619f17ab1"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"7eeec2bd1e912bdd485dd3d619f17ab1","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"7eeec2bd1e912bdd485dd3d619f17ab1"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":536,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:33Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":536,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.623545,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"7eeec2bd1e912bdd485dd3d619f17ab1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837913,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxM30.JDcSbZc6DlqPuZnwXEDyG1iyy5DCiDWZb0_z3PPB6Us"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"7eeec2bd1e912bdd485dd3d619f17ab1","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62d62ecd-a49c-4b9d-9377-bc7937e898cc"},"level":"info","message":"Attempting to run experiment","requestID":"7eeec2bd1e912bdd485dd3d619f17ab1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62d62ecd-a49c-4b9d-9377-bc7937e898cc"},"level":"info","message":"Attempting to book experiment","requestID":"7eeec2bd1e912bdd485dd3d619f17ab1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62d62ecd-a49c-4b9d-9377-bc7937e898cc"},"level":"info","message":"Successfully booked experiment","requestID":"7eeec2bd1e912bdd485dd3d619f17ab1"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5f6123e0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5f617200-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":537,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:33Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":537,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.403351,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:33Z"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Received request.","req_id":538,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/db73a945-ffe1-4bca-b4da-97b500dbc973","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5f6123e0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/db73a945-ffe1-4bca-b4da-97b500dbc973","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837913,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxM30.JDcSbZc6DlqPuZnwXEDyG1iyy5DCiDWZb0_z3PPB6Us"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5f6123e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Sent response.","req_id":538,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.045642,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/da00000c-265c-4595-8f60-8bac6bb9f84e","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5f617200-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/da00000c-265c-4595-8f60-8bac6bb9f84e","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837913,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxM30.JDcSbZc6DlqPuZnwXEDyG1iyy5DCiDWZb0_z3PPB6Us"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5f617200-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb73a945-ffe1-4bca-b4da-97b500dbc973","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb73a945-ffe1-4bca-b4da-97b500dbc973","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:32.689511473Z"}]},"request_id":"fa4dd6f8-3428-4b2d-974d-4d89cf12d2b9","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837913.3841321} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5f6123e0-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fda00000c-265c-4595-8f60-8bac6bb9f84e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fda00000c-265c-4595-8f60-8bac6bb9f84e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:32.742406167Z"}]},"request_id":"e50b09ac-f3a6-48e4-ac65-8b59d4b11752","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837913.3850353} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5f617200-49d8-11ef-9fe8-9113c2c8d024","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5f6123e0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/db73a945-ffe1-4bca-b4da-97b500dbc973? 200 15ms","method":"GET","requestID":"5f6123e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":15,"status":200,"url":"/devices/db73a945-ffe1-4bca-b4da-97b500dbc973?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5f617200-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/da00000c-265c-4595-8f60-8bac6bb9f84e? 200 14ms","method":"GET","requestID":"5f617200-49d8-11ef-9fe8-9113c2c8d024","responseTime":14,"status":200,"url":"/devices/da00000c-265c-4595-8f60-8bac6bb9f84e?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62d62ecd-a49c-4b9d-9377-bc7937e898cc"},"level":"info","message":"Setting up experiment","requestID":"7eeec2bd1e912bdd485dd3d619f17ab1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62d62ecd-a49c-4b9d-9377-bc7937e898cc"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"7eeec2bd1e912bdd485dd3d619f17ab1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62d62ecd-a49c-4b9d-9377-bc7937e898cc"},"level":"info","message":"Successfully locked booking for experiment","requestID":"7eeec2bd1e912bdd485dd3d619f17ab1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62d62ecd-a49c-4b9d-9377-bc7937e898cc"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"7eeec2bd1e912bdd485dd3d619f17ab1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62d62ecd-a49c-4b9d-9377-bc7937e898cc"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"7eeec2bd1e912bdd485dd3d619f17ab1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62d62ecd-a49c-4b9d-9377-bc7937e898cc"},"level":"info","message":"Attempting to update booking for experiment","requestID":"7eeec2bd1e912bdd485dd3d619f17ab1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62d62ecd-a49c-4b9d-9377-bc7937e898cc"},"level":"info","message":"Successfully updated booking for experiment","requestID":"7eeec2bd1e912bdd485dd3d619f17ab1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62d62ecd-a49c-4b9d-9377-bc7937e898cc"},"level":"info","message":"Successfully set up experiment","requestID":"7eeec2bd1e912bdd485dd3d619f17ab1"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5f6b8420-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5f6bd240-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5f6c2060-49d8-11ef-9fe8-9113c2c8d024"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62d62ecd-a49c-4b9d-9377-bc7937e898cc"},"level":"info","message":"Successfully running experiment","requestID":"7eeec2bd1e912bdd485dd3d619f17ab1"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":539,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:33Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":539,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.742954,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:33Z"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Received request.","req_id":540,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/db73a945-ffe1-4bca-b4da-97b500dbc973","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5f6b8420-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/db73a945-ffe1-4bca-b4da-97b500dbc973","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837913,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxM30.JDcSbZc6DlqPuZnwXEDyG1iyy5DCiDWZb0_z3PPB6Us"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"5f6b8420-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Sent response.","req_id":540,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.688747,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:33Z"} authorization-1 | {"client_addr":"127.0.0.1:58274","level":"info","msg":"Received request.","req_id":541,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/da00000c-265c-4595-8f60-8bac6bb9f84e","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5f6bd240-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/da00000c-265c-4595-8f60-8bac6bb9f84e","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837913,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxM30.JDcSbZc6DlqPuZnwXEDyG1iyy5DCiDWZb0_z3PPB6Us"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"5f6bd240-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58274","level":"info","msg":"Sent response.","req_id":541,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.268459,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:33Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb73a945-ffe1-4bca-b4da-97b500dbc973","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"caec6a32-6e2e-4abf-9189-a17727b598a1","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837913.4541614} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/db73a945-ffe1-4bca-b4da-97b500dbc973","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5f6c2060-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/db73a945-ffe1-4bca-b4da-97b500dbc973","object_type":"device","rebac_allow":false,"scope_allow":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":"5f6c2060-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb73a945-ffe1-4bca-b4da-97b500dbc973","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb73a945-ffe1-4bca-b4da-97b500dbc973","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:32.689511473Z"}]},"request_id":"a2f5bea5-e16d-4863-a4a5-0c7a1123c9c4","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837913.4585106} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"5f6b8420-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fda00000c-265c-4595-8f60-8bac6bb9f84e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fda00000c-265c-4595-8f60-8bac6bb9f84e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:32.742406167Z"}]},"request_id":"d159812a-a5eb-4dd1-8346-df660c46e976","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837913.4621398} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5f6c2060-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5f6bd240-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/db73a945-ffe1-4bca-b4da-97b500dbc973/signaling 200 17ms","method":"POST","requestID":"5f6c2060-49d8-11ef-9fe8-9113c2c8d024","responseTime":17,"status":200,"url":"/devices/db73a945-ffe1-4bca-b4da-97b500dbc973/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5f6f7bc0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5f6b8420-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/db73a945-ffe1-4bca-b4da-97b500dbc973? 200 30ms","method":"GET","requestID":"5f6b8420-49d8-11ef-9fe8-9113c2c8d024","responseTime":30,"status":200,"url":"/devices/db73a945-ffe1-4bca-b4da-97b500dbc973?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5f6bd240-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/da00000c-265c-4595-8f60-8bac6bb9f84e? 200 29ms","method":"GET","requestID":"5f6bd240-49d8-11ef-9fe8-9113c2c8d024","responseTime":29,"status":200,"url":"/devices/da00000c-265c-4595-8f60-8bac6bb9f84e?"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F62d62ecd-a49c-4b9d-9377-bc7937e898cc#owner@http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F62d62ecd-a49c-4b9d-9377-bc7937e898cc","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"0a7d0231-2bca-4c1f-8fd3-ace27364da4e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837913.472758} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e2f0e28d-68e4-4ecf-bfaf-5f850fb5d666","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837913.4730778} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"7eeec2bd1e912bdd485dd3d619f17ab1","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":542,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:33Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fda00000c-265c-4595-8f60-8bac6bb9f84e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"237690f9-632b-440a-8cac-eaea4d15d9e8","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837913.4758759} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5f708d30-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":542,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.975228,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/da00000c-265c-4595-8f60-8bac6bb9f84e","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5f6f7bc0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/da00000c-265c-4595-8f60-8bac6bb9f84e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5f6f7bc0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":543,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:33Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5f6f7bc0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/da00000c-265c-4595-8f60-8bac6bb9f84e/signaling 200 12ms","method":"POST","requestID":"5f6f7bc0-49d8-11ef-9fe8-9113c2c8d024","responseTime":12,"status":200,"url":"/devices/da00000c-265c-4595-8f60-8bac6bb9f84e/signaling"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb73a945-ffe1-4bca-b4da-97b500dbc973","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5271dfeb-e1e2-46fa-8b83-4d5662d7c6f9","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837913.4809937} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":543,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.591939,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:33Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/62d62ecd-a49c-4b9d-9377-bc7937e898cc","user":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"7eeec2bd1e912bdd485dd3d619f17ab1"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/db73a945-ffe1-4bca-b4da-97b500dbc973","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5f708d30-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/db73a945-ffe1-4bca-b4da-97b500dbc973","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":"24/Jul/2024:16:18:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1295","request_time":"0.157","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7eeec2bd1e912bdd485dd3d619f17ab1"} experiment-1 | {"level":"info","message":"POST /experiments? 201 153ms","method":"POST","requestID":"7eeec2bd1e912bdd485dd3d619f17ab1","responseTime":153,"status":201,"url":"/experiments?"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5f708d30-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5f708d30-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/db73a945-ffe1-4bca-b4da-97b500dbc973/signaling 200 11ms","method":"POST","requestID":"5f708d30-49d8-11ef-9fe8-9113c2c8d024","responseTime":11,"status":200,"url":"/devices/db73a945-ffe1-4bca-b4da-97b500dbc973/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5f728900-49d8-11ef-9fe8-9113c2c8d024"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxM30.JDcSbZc6DlqPuZnwXEDyG1iyy5DCiDWZb0_z3PPB6Us","level":"info","message":"auth send jwt","requestID":"3fbf538b4c47affcc08f8a7eb355cb22"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"3fbf538b4c47affcc08f8a7eb355cb22","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3fbf538b4c47affcc08f8a7eb355cb22"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":544,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:33Z"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Received request.","req_id":545,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:33Z"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Sent response.","req_id":545,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.699772,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:33Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":544,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.589433,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:33Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fda00000c-265c-4595-8f60-8bac6bb9f84e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"adfb61ab-642c-43ab-85da-39fcb9a0aab2","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837913.4939222} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/db73a945-ffe1-4bca-b4da-97b500dbc973","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3fbf538b4c47affcc08f8a7eb355cb22","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/db73a945-ffe1-4bca-b4da-97b500dbc973","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837913,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxM30.JDcSbZc6DlqPuZnwXEDyG1iyy5DCiDWZb0_z3PPB6Us"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3fbf538b4c47affcc08f8a7eb355cb22","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/da00000c-265c-4595-8f60-8bac6bb9f84e","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5f728900-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/da00000c-265c-4595-8f60-8bac6bb9f84e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5f728900-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb73a945-ffe1-4bca-b4da-97b500dbc973","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb73a945-ffe1-4bca-b4da-97b500dbc973","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:32.689511473Z"}]},"request_id":"cb1538e5-69dd-47e9-bfd8-2ac619188d3e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837913.4994302} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3fbf538b4c47affcc08f8a7eb355cb22","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5f728900-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/da00000c-265c-4595-8f60-8bac6bb9f84e/signaling 200 12ms","method":"POST","requestID":"5f728900-49d8-11ef-9fe8-9113c2c8d024","responseTime":12,"status":200,"url":"/devices/da00000c-265c-4595-8f60-8bac6bb9f84e/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62d62ecd-a49c-4b9d-9377-bc7937e898cc"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"7eeec2bd1e912bdd485dd3d619f17ab1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62d62ecd-a49c-4b9d-9377-bc7937e898cc"},"level":"info","message":"Building connection plan","requestID":"7eeec2bd1e912bdd485dd3d619f17ab1"} 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":"1f1cf1ac-6f82-4443-b6d8-4fb6d58ddcd4"},{"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":"d4a4ea83-daf2-4d86-a847-be01e4efeee4"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"2e8dcdf0-9616-4079-abf3-a8c54108d3dd"}]},"level":"info","message":"Built pairwise service configurations","requestID":"7eeec2bd1e912bdd485dd3d619f17ab1"} experiment-1 | {"data":{"connectionPlan":[{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/da00000c-265c-4595-8f60-8bac6bb9f84e"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/db73a945-ffe1-4bca-b4da-97b500dbc973"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"7eeec2bd1e912bdd485dd3d619f17ab1"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"5f74d2f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3fbf538b4c47affcc08f8a7eb355cb22"} gateway-1 | {"time_local":"24/Jul/2024:16:18:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/db73a945-ffe1-4bca-b4da-97b500dbc973? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3fbf538b4c47affcc08f8a7eb355cb22"} device-1 | {"level":"info","message":"GET /devices/db73a945-ffe1-4bca-b4da-97b500dbc973? 200 13ms","method":"GET","requestID":"3fbf538b4c47affcc08f8a7eb355cb22","responseTime":13,"status":200,"url":"/devices/db73a945-ffe1-4bca-b4da-97b500dbc973?"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":546,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:33Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":546,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.824428,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5f74d2f0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837913,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxM30.JDcSbZc6DlqPuZnwXEDyG1iyy5DCiDWZb0_z3PPB6Us"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5f74d2f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxM30.JDcSbZc6DlqPuZnwXEDyG1iyy5DCiDWZb0_z3PPB6Us","level":"info","message":"auth send jwt","requestID":"07d343bc14a9f3a7a5dc8845cdafd84e"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"07d343bc14a9f3a7a5dc8845cdafd84e","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"07d343bc14a9f3a7a5dc8845cdafd84e"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":547,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:33Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":547,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.624472,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/da00000c-265c-4595-8f60-8bac6bb9f84e","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"07d343bc14a9f3a7a5dc8845cdafd84e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/da00000c-265c-4595-8f60-8bac6bb9f84e","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837913,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxM30.JDcSbZc6DlqPuZnwXEDyG1iyy5DCiDWZb0_z3PPB6Us"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"07d343bc14a9f3a7a5dc8845cdafd84e","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","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%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"85512e5d-d8bb-4ae1-9975-3a3e219e3c42","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837913.5172203} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fbe21c66-ec84-4ad9-9c46-4b591970f345","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837913.5179684} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fda00000c-265c-4595-8f60-8bac6bb9f84e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fda00000c-265c-4595-8f60-8bac6bb9f84e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:32.742406167Z"}]},"request_id":"08f88b63-bdd1-41c1-a283-6362774113ac","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837913.5188148} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"07d343bc14a9f3a7a5dc8845cdafd84e","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"5f74d2f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"07d343bc14a9f3a7a5dc8845cdafd84e"} device-1 | {"level":"info","message":"GET /devices/da00000c-265c-4595-8f60-8bac6bb9f84e? 200 14ms","method":"GET","requestID":"07d343bc14a9f3a7a5dc8845cdafd84e","responseTime":14,"status":200,"url":"/devices/da00000c-265c-4595-8f60-8bac6bb9f84e?"} gateway-1 | {"time_local":"24/Jul/2024:16:18:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/da00000c-265c-4595-8f60-8bac6bb9f84e? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"07d343bc14a9f3a7a5dc8845cdafd84e"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"5f74d2f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"5f74d2f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/2a4fb423-d2c6-4c07-9b7a-821cd1b4ac38'","requestID":"5f74d2f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/2a4fb423-d2c6-4c07-9b7a-821cd1b4ac38'","requestID":"5f74d2f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"5f74d2f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 31ms","method":"POST","requestID":"5f74d2f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":31,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"5f74d2f0-49d8-11ef-9fe8-9113c2c8d024"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62d62ecd-a49c-4b9d-9377-bc7937e898cc"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"7eeec2bd1e912bdd485dd3d619f17ab1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5f7dac90-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":548,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:33Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb73a945-ffe1-4bca-b4da-97b500dbc973","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ae955508-7f39-4fe1-a29f-f82f23845007","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837913.5668154} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":548,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.147044,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/db73a945-ffe1-4bca-b4da-97b500dbc973","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5f7dac90-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/db73a945-ffe1-4bca-b4da-97b500dbc973","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5f7dac90-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5f7dac90-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/db73a945-ffe1-4bca-b4da-97b500dbc973/signaling 200 9ms","method":"POST","requestID":"5f7dac90-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/devices/db73a945-ffe1-4bca-b4da-97b500dbc973/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5f7f8150-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":549,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:33Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fda00000c-265c-4595-8f60-8bac6bb9f84e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c581122c-f58d-4830-9c5e-6b8d86213620","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837913.5784843} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":549,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.345193,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/da00000c-265c-4595-8f60-8bac6bb9f84e","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5f7f8150-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/da00000c-265c-4595-8f60-8bac6bb9f84e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5f7f8150-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5f7f8150-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/da00000c-265c-4595-8f60-8bac6bb9f84e/signaling 200 10ms","method":"POST","requestID":"5f7f8150-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/devices/da00000c-265c-4595-8f60-8bac6bb9f84e/signaling"} device-1 | {"device":"db73a945-ffe1-4bca-b4da-97b500dbc973","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"2a4fb423-d2c6-4c07-9b7a-821cd1b4ac38","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"da00000c-265c-4595-8f60-8bac6bb9f84e","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"2a4fb423-d2c6-4c07-9b7a-821cd1b4ac38","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"da00000c-265c-4595-8f60-8bac6bb9f84e","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"da00000c-265c-4595-8f60-8bac6bb9f84e","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"da00000c-265c-4595-8f60-8bac6bb9f84e","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"da00000c-265c-4595-8f60-8bac6bb9f84e","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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/2a4fb423-d2c6-4c07-9b7a-821cd1b4ac38' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2a4fb423-d2c6-4c07-9b7a-821cd1b4ac38","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5db00fd24fd14c27a8b1f8dd4593395e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5db00fd24fd14c27a8b1f8dd4593395e","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/da00000c-265c-4595-8f60-8bac6bb9f84e"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/db73a945-ffe1-4bca-b4da-97b500dbc973"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/2a4fb423-d2c6-4c07-9b7a-821cd1b4ac38"}}},"level":"info","message":"received a callback","requestID":"5db00fd24fd14c27a8b1f8dd4593395e"} device-1 | {"device":"db73a945-ffe1-4bca-b4da-97b500dbc973","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"db73a945-ffe1-4bca-b4da-97b500dbc973","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"db73a945-ffe1-4bca-b4da-97b500dbc973","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.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":"5db00fd24fd14c27a8b1f8dd4593395e","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"5db00fd24fd14c27a8b1f8dd4593395e"} device-1 | {"data":{"peerconnection":"2a4fb423-d2c6-4c07-9b7a-821cd1b4ac38","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"da00000c-265c-4595-8f60-8bac6bb9f84e","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"db73a945-ffe1-4bca-b4da-97b500dbc973","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"da00000c-265c-4595-8f60-8bac6bb9f84e","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"db73a945-ffe1-4bca-b4da-97b500dbc973","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"2a4fb423-d2c6-4c07-9b7a-821cd1b4ac38","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/2a4fb423-d2c6-4c07-9b7a-821cd1b4ac38' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2a4fb423-d2c6-4c07-9b7a-821cd1b4ac38","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6d8f65f32f714496080f02501fb1f0a5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"6d8f65f32f714496080f02501fb1f0a5","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/da00000c-265c-4595-8f60-8bac6bb9f84e"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/db73a945-ffe1-4bca-b4da-97b500dbc973"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/2a4fb423-d2c6-4c07-9b7a-821cd1b4ac38"}}},"level":"info","message":"received a callback","requestID":"6d8f65f32f714496080f02501fb1f0a5"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"60bdcdb0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":550,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:35Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2a4fb423-d2c6-4c07-9b7a-821cd1b4ac38","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"51ec15fe-6c29-4b9e-8ce9-51d8117785ce","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837915.666143} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":550,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.762389,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2a4fb423-d2c6-4c07-9b7a-821cd1b4ac38","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"60bdcdb0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/2a4fb423-d2c6-4c07-9b7a-821cd1b4ac38","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":"60bdcdb0-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"60bdcdb0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /peerconnections/2a4fb423-d2c6-4c07-9b7a-821cd1b4ac38 200 13ms","method":"GET","requestID":"60bdcdb0-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/peerconnections/2a4fb423-d2c6-4c07-9b7a-821cd1b4ac38"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 49ms","method":"POST","requestID":"6d8f65f32f714496080f02501fb1f0a5","responseTime":49,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.054","http_referrer":"","http_user_agent":"node-fetch","requestID":"6d8f65f32f714496080f02501fb1f0a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"60c43650-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":551,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:35Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fda00000c-265c-4595-8f60-8bac6bb9f84e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e5b36986-ae54-43ec-8a0e-980c51d3ab48","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837915.707999} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":551,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.874858,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/da00000c-265c-4595-8f60-8bac6bb9f84e","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"60c43650-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/da00000c-265c-4595-8f60-8bac6bb9f84e","object_type":"device","rebac_allow":false,"scope_allow":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":"60c43650-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"60c43650-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/da00000c-265c-4595-8f60-8bac6bb9f84e/signaling 200 14ms","method":"POST","requestID":"60c43650-49d8-11ef-9fe8-9113c2c8d024","responseTime":14,"status":200,"url":"/devices/da00000c-265c-4595-8f60-8bac6bb9f84e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"60c6ce60-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":552,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:35Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb73a945-ffe1-4bca-b4da-97b500dbc973","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aa1289f1-feec-43e2-aa78-6db5437a9d4d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837915.7252321} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":552,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.884806,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/db73a945-ffe1-4bca-b4da-97b500dbc973","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"60c6ce60-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/db73a945-ffe1-4bca-b4da-97b500dbc973","object_type":"device","rebac_allow":false,"scope_allow":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":"60c6ce60-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"60c6ce60-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/db73a945-ffe1-4bca-b4da-97b500dbc973/signaling 200 14ms","method":"POST","requestID":"60c6ce60-49d8-11ef-9fe8-9113c2c8d024","responseTime":14,"status":200,"url":"/devices/db73a945-ffe1-4bca-b4da-97b500dbc973/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxNX0.gZ-UNVICj-xT9JP7dbEEJkmB8PNzdgOIsa2m34BYDSY","level":"info","message":"auth send jwt","requestID":"81d6bb56a2c783db74505526075b1374"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"81d6bb56a2c783db74505526075b1374","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/62d62ecd-a49c-4b9d-9377-bc7937e898cc","requestID":"81d6bb56a2c783db74505526075b1374"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":553,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:35Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":553,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.157148,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/62d62ecd-a49c-4b9d-9377-bc7937e898cc","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"81d6bb56a2c783db74505526075b1374","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/62d62ecd-a49c-4b9d-9377-bc7937e898cc","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837915,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxNX0.gZ-UNVICj-xT9JP7dbEEJkmB8PNzdgOIsa2m34BYDSY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"81d6bb56a2c783db74505526075b1374","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/62d62ecd-a49c-4b9d-9377-bc7937e898cc","requestID":"81d6bb56a2c783db74505526075b1374"} gateway-1 | {"time_local":"24/Jul/2024:16:18:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/62d62ecd-a49c-4b9d-9377-bc7937e898cc HTTP/1.1","status": "200","body_bytes_sent":"1368","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"81d6bb56a2c783db74505526075b1374"} experiment-1 | {"level":"info","message":"GET /experiments/62d62ecd-a49c-4b9d-9377-bc7937e898cc 200 15ms","method":"GET","requestID":"81d6bb56a2c783db74505526075b1374","responseTime":15,"status":200,"url":"/experiments/62d62ecd-a49c-4b9d-9377-bc7937e898cc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxNX0.gZ-UNVICj-xT9JP7dbEEJkmB8PNzdgOIsa2m34BYDSY","level":"info","message":"auth send jwt","requestID":"a61c1bec052522dc0df7843077e39293"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a61c1bec052522dc0df7843077e39293","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/62d62ecd-a49c-4b9d-9377-bc7937e898cc","requestID":"a61c1bec052522dc0df7843077e39293"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":554,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:35Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":554,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.651341,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:35Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/62d62ecd-a49c-4b9d-9377-bc7937e898cc","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"a61c1bec052522dc0df7843077e39293","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/62d62ecd-a49c-4b9d-9377-bc7937e898cc","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837915,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxNX0.gZ-UNVICj-xT9JP7dbEEJkmB8PNzdgOIsa2m34BYDSY"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"a61c1bec052522dc0df7843077e39293","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62d62ecd-a49c-4b9d-9377-bc7937e898cc"},"level":"info","message":"Attempting to finish experiment","requestID":"a61c1bec052522dc0df7843077e39293"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"60d28e30-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":555,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:35Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":555,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.686129,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:35Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2a4fb423-d2c6-4c07-9b7a-821cd1b4ac38","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"60d28e30-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:http://localhost/peerconnections/2a4fb423-d2c6-4c07-9b7a-821cd1b4ac38","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837915,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxNX0.gZ-UNVICj-xT9JP7dbEEJkmB8PNzdgOIsa2m34BYDSY"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"60d28e30-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"device":"db73a945-ffe1-4bca-b4da-97b500dbc973","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"db73a945-ffe1-4bca-b4da-97b500dbc973","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"db73a945-ffe1-4bca-b4da-97b500dbc973","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"da00000c-265c-4595-8f60-8bac6bb9f84e","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"da00000c-265c-4595-8f60-8bac6bb9f84e","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"da00000c-265c-4595-8f60-8bac6bb9f84e","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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/2a4fb423-d2c6-4c07-9b7a-821cd1b4ac38' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/2a4fb423-d2c6-4c07-9b7a-821cd1b4ac38' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2a4fb423-d2c6-4c07-9b7a-821cd1b4ac38","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2a4fb423-d2c6-4c07-9b7a-821cd1b4ac38': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2a4fb423-d2c6-4c07-9b7a-821cd1b4ac38","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"00280f9b-1295-47c3-a418-e8c05003148a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837915.8229012} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e7076045-848a-4123-a1ed-66123adc028f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837915.8234317} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3390157d6943200c029450400601be24","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"60d28e30-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"3390157d6943200c029450400601be24","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/da00000c-265c-4595-8f60-8bac6bb9f84e"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/db73a945-ffe1-4bca-b4da-97b500dbc973"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/2a4fb423-d2c6-4c07-9b7a-821cd1b4ac38"}}},"level":"info","message":"received a callback","requestID":"3390157d6943200c029450400601be24"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"eb4533708e301d1bedd89f65fe0fe5b8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"eb4533708e301d1bedd89f65fe0fe5b8","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/da00000c-265c-4595-8f60-8bac6bb9f84e"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/db73a945-ffe1-4bca-b4da-97b500dbc973"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/2a4fb423-d2c6-4c07-9b7a-821cd1b4ac38"}}},"level":"info","message":"received a callback","requestID":"eb4533708e301d1bedd89f65fe0fe5b8"} device-1 | {"data":{"peerconnection":"2a4fb423-d2c6-4c07-9b7a-821cd1b4ac38","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"60d28e30-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"DELETE /peerconnections/2a4fb423-d2c6-4c07-9b7a-821cd1b4ac38 204 51ms","method":"DELETE","requestID":"60d28e30-49d8-11ef-9fe8-9113c2c8d024","responseTime":51,"status":204,"url":"/peerconnections/2a4fb423-d2c6-4c07-9b7a-821cd1b4ac38"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62d62ecd-a49c-4b9d-9377-bc7937e898cc"},"level":"info","message":"Successfully finished experiment","requestID":"a61c1bec052522dc0df7843077e39293"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"60ddb1c0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":556,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:35Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fda00000c-265c-4595-8f60-8bac6bb9f84e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bcc696e4-93fc-4ca3-9ca0-fa6e07adf3a2","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837915.8744807} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":556,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.454378,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/da00000c-265c-4595-8f60-8bac6bb9f84e","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"60ddb1c0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/da00000c-265c-4595-8f60-8bac6bb9f84e","object_type":"device","rebac_allow":false,"scope_allow":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":"60ddb1c0-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"60ddb1c0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/da00000c-265c-4595-8f60-8bac6bb9f84e/signaling 200 13ms","method":"POST","requestID":"60ddb1c0-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/devices/da00000c-265c-4595-8f60-8bac6bb9f84e/signaling"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F62d62ecd-a49c-4b9d-9377-bc7937e898cc': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F62d62ecd-a49c-4b9d-9377-bc7937e898cc","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"16de475a-56e4-4433-94e8-99231a425dab","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837915.8823967} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6c02fe82-60b5-4e22-af59-35f06b903547","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837915.8831034} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"60e022c0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"a61c1bec052522dc0df7843077e39293","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":557,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:35Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb73a945-ffe1-4bca-b4da-97b500dbc973","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"28526c3d-ad6f-448f-918d-b454aa6bf157","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837915.8903277} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":557,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.216392,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/db73a945-ffe1-4bca-b4da-97b500dbc973","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"60e022c0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/db73a945-ffe1-4bca-b4da-97b500dbc973","object_type":"device","rebac_allow":false,"scope_allow":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":"60e022c0-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"60e022c0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/db73a945-ffe1-4bca-b4da-97b500dbc973/signaling 200 14ms","method":"POST","requestID":"60e022c0-49d8-11ef-9fe8-9113c2c8d024","responseTime":14,"status":200,"url":"/devices/db73a945-ffe1-4bca-b4da-97b500dbc973/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/62d62ecd-a49c-4b9d-9377-bc7937e898cc","requestID":"a61c1bec052522dc0df7843077e39293"} gateway-1 | {"time_local":"24/Jul/2024:16:18:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/62d62ecd-a49c-4b9d-9377-bc7937e898cc HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.186","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a61c1bec052522dc0df7843077e39293"} experiment-1 | {"level":"info","message":"DELETE /experiments/62d62ecd-a49c-4b9d-9377-bc7937e898cc 204 181ms","method":"DELETE","requestID":"a61c1bec052522dc0df7843077e39293","responseTime":181,"status":204,"url":"/experiments/62d62ecd-a49c-4b9d-9377-bc7937e898cc"} gateway-1 | {"time_local":"24/Jul/2024:16:18:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2747","request_time":"2.678","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"ec88fad96b9403b3e428f367d688b722"} gateway-1 | {"time_local":"24/Jul/2024:16:18:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2745","request_time":"2.687","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"e5d7b71249beb71dfe7d0072355fe00f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 129ms","method":"POST","requestID":"3390157d6943200c029450400601be24","responseTime":129,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.133","http_referrer":"","http_user_agent":"node-fetch","requestID":"3390157d6943200c029450400601be24"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 128ms","method":"POST","requestID":"eb4533708e301d1bedd89f65fe0fe5b8","responseTime":128,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.134","http_referrer":"","http_user_agent":"node-fetch","requestID":"eb4533708e301d1bedd89f65fe0fe5b8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxNX0.gZ-UNVICj-xT9JP7dbEEJkmB8PNzdgOIsa2m34BYDSY","level":"info","message":"auth send jwt","requestID":"8723c0a7ddaf6c07a56136dbceb74f5a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"8723c0a7ddaf6c07a56136dbceb74f5a","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"8723c0a7ddaf6c07a56136dbceb74f5a"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/da00000c-265c-4595-8f60-8bac6bb9f84e' closed"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":558,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:35Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":558,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.107728,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:35Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"8723c0a7ddaf6c07a56136dbceb74f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837915,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxNX0.gZ-UNVICj-xT9JP7dbEEJkmB8PNzdgOIsa2m34BYDSY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8723c0a7ddaf6c07a56136dbceb74f5a","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/db73a945-ffe1-4bca-b4da-97b500dbc973' 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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aae3c1c-8450-417c-9c23-ac8584efd4d9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4f5754da-c4b6-4dff-902f-7bfd8dfa43a7","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837915.982118} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8723c0a7ddaf6c07a56136dbceb74f5a","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a4bf1740-2c70-44c6-9e47-cf29aad33b27","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837915.9881268} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"8723c0a7ddaf6c07a56136dbceb74f5a","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aae3c1c-8450-417c-9c23-ac8584efd4d9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"430a8755-2c85-471a-9058-4162ebac00fd","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837915.99898} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bb69f2dd-696b-4159-b2c7-05e346d99ce1","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837915.9991264} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"8723c0a7ddaf6c07a56136dbceb74f5a","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aae3c1c-8450-417c-9c23-ac8584efd4d9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aae3c1c-8450-417c-9c23-ac8584efd4d9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:35.998945353Z"}]},"request_id":"5ebefd36-ce23-4a4f-9ab9-0e3ed3cf734e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837916.0040553} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8723c0a7ddaf6c07a56136dbceb74f5a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"8723c0a7ddaf6c07a56136dbceb74f5a"} gateway-1 | {"time_local":"24/Jul/2024:16:18:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8723c0a7ddaf6c07a56136dbceb74f5a"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"8723c0a7ddaf6c07a56136dbceb74f5a","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxNn0.pIRnbzPMg5A0e4B4Jtoo6OOygbtIBZ5dL-rFTwy6Hc0","level":"info","message":"auth send jwt","requestID":"9e642acbd712f38146da0f4d957bb3cc"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9e642acbd712f38146da0f4d957bb3cc","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"9e642acbd712f38146da0f4d957bb3cc"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":559,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:36Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":559,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.819597,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:36Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"9e642acbd712f38146da0f4d957bb3cc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837916,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxNn0.pIRnbzPMg5A0e4B4Jtoo6OOygbtIBZ5dL-rFTwy6Hc0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9e642acbd712f38146da0f4d957bb3cc","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc038ab9e-476d-4880-b0b4-c13dad8cede2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"07737e21-3219-4701-a946-67923f63c873","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837916.029783} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"9e642acbd712f38146da0f4d957bb3cc","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"46523663-9f11-43e1-a863-c7b5c0e9c165","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837916.0351503} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"9e642acbd712f38146da0f4d957bb3cc","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc038ab9e-476d-4880-b0b4-c13dad8cede2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"36161508-fc97-4c32-a1bc-7ba7af3078cd","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837916.0528235} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b54d99cf-1d6a-4537-a4cc-e6dd10f550ed","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837916.0531023} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"9e642acbd712f38146da0f4d957bb3cc","responseTime":25,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc038ab9e-476d-4880-b0b4-c13dad8cede2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc038ab9e-476d-4880-b0b4-c13dad8cede2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:36.052785847Z"}]},"request_id":"b49fc806-80b2-40ce-981d-1d5edfec9823","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837916.0631638} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9e642acbd712f38146da0f4d957bb3cc","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"9e642acbd712f38146da0f4d957bb3cc"} device-1 | {"level":"info","message":"POST /devices? 201 54ms","method":"POST","requestID":"9e642acbd712f38146da0f4d957bb3cc","responseTime":54,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Jul/2024:16:18:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.059","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9e642acbd712f38146da0f4d957bb3cc"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"eae9075362d3b2ece6ab22ab371bc51a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"eae9075362d3b2ece6ab22ab371bc51a","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f0d0585d8922bc0dc0de089481978b0b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"24/Jul/2024:16:18:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9/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":"eae9075362d3b2ece6ab22ab371bc51a"} device-1 | {"level":"info","message":"OPTIONS /devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9/websocket 200 1ms","method":"OPTIONS","requestID":"eae9075362d3b2ece6ab22ab371bc51a","responseTime":1,"status":200,"url":"/devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9/websocket"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f0d0585d8922bc0dc0de089481978b0b","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Jul/2024:16:18:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/c038ab9e-476d-4880-b0b4-c13dad8cede2/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":"f0d0585d8922bc0dc0de089481978b0b"} device-1 | {"level":"info","message":"OPTIONS /devices/c038ab9e-476d-4880-b0b4-c13dad8cede2/websocket 200 1ms","method":"OPTIONS","requestID":"f0d0585d8922bc0dc0de089481978b0b","responseTime":1,"status":200,"url":"/devices/c038ab9e-476d-4880-b0b4-c13dad8cede2/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxOH0.CI3VBe09Ehc0Oe_RMul2011at0SLSzEUWciK39NV0N8","level":"info","message":"auth send jwt","requestID":"e24867be9ee249c4113376d89e0406e9"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"e24867be9ee249c4113376d89e0406e9","responseTime":8,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxOH0.CI3VBe09Ehc0Oe_RMul2011at0SLSzEUWciK39NV0N8","level":"info","message":"auth send jwt","requestID":"0912ccfe3f8ac955dd97427d01454a27"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e24867be9ee249c4113376d89e0406e9"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"0912ccfe3f8ac955dd97427d01454a27","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0912ccfe3f8ac955dd97427d01454a27"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":560,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":560,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.017223,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"e24867be9ee249c4113376d89e0406e9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837918,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxOH0.CI3VBe09Ehc0Oe_RMul2011at0SLSzEUWciK39NV0N8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e24867be9ee249c4113376d89e0406e9","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Received request.","req_id":561,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Sent response.","req_id":561,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.397486,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c038ab9e-476d-4880-b0b4-c13dad8cede2","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"0912ccfe3f8ac955dd97427d01454a27","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/c038ab9e-476d-4880-b0b4-c13dad8cede2","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837918,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxOH0.CI3VBe09Ehc0Oe_RMul2011at0SLSzEUWciK39NV0N8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0912ccfe3f8ac955dd97427d01454a27","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0912ccfe3f8ac955dd97427d01454a27"} device-1 | {"level":"info","message":"POST /devices/c038ab9e-476d-4880-b0b4-c13dad8cede2/websocket 200 18ms","method":"POST","requestID":"0912ccfe3f8ac955dd97427d01454a27","responseTime":18,"status":200,"url":"/devices/c038ab9e-476d-4880-b0b4-c13dad8cede2/websocket"} gateway-1 | {"time_local":"24/Jul/2024:16:18:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c038ab9e-476d-4880-b0b4-c13dad8cede2/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":"0912ccfe3f8ac955dd97427d01454a27"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e24867be9ee249c4113376d89e0406e9"} gateway-1 | {"time_local":"24/Jul/2024:16:18:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.041","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e24867be9ee249c4113376d89e0406e9"} device-1 | {"level":"info","message":"POST /devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9/websocket 200 31ms","method":"POST","requestID":"e24867be9ee249c4113376d89e0406e9","responseTime":31,"status":200,"url":"/devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c038ab9e-476d-4880-b0b4-c13dad8cede2' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxOH0.CI3VBe09Ehc0Oe_RMul2011at0SLSzEUWciK39NV0N8","level":"info","message":"auth send jwt","requestID":"897d5547dd61248ae499e8f1a2e888c9"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"897d5547dd61248ae499e8f1a2e888c9","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"897d5547dd61248ae499e8f1a2e888c9"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":562,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":562,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.224173,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"897d5547dd61248ae499e8f1a2e888c9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837918,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxOH0.CI3VBe09Ehc0Oe_RMul2011at0SLSzEUWciK39NV0N8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"897d5547dd61248ae499e8f1a2e888c9","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aae3c1c-8450-417c-9c23-ac8584efd4d9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aae3c1c-8450-417c-9c23-ac8584efd4d9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:35.998945353Z"}]},"request_id":"f3a489ce-6531-43e4-8dcb-b823cbddc850","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837918.0813344} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"897d5547dd61248ae499e8f1a2e888c9","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"897d5547dd61248ae499e8f1a2e888c9"} device-1 | {"level":"info","message":"GET /devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9? 200 18ms","method":"GET","requestID":"897d5547dd61248ae499e8f1a2e888c9","responseTime":18,"status":200,"url":"/devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9?"} gateway-1 | {"time_local":"24/Jul/2024:16:18:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"897d5547dd61248ae499e8f1a2e888c9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxOH0.CI3VBe09Ehc0Oe_RMul2011at0SLSzEUWciK39NV0N8","level":"info","message":"auth send jwt","requestID":"0c7cdc08cf8eb8fe83f72bb59a9c9b22"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0c7cdc08cf8eb8fe83f72bb59a9c9b22","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0c7cdc08cf8eb8fe83f72bb59a9c9b22"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":563,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":563,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.084069,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c038ab9e-476d-4880-b0b4-c13dad8cede2","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"0c7cdc08cf8eb8fe83f72bb59a9c9b22","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/c038ab9e-476d-4880-b0b4-c13dad8cede2","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837918,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxOH0.CI3VBe09Ehc0Oe_RMul2011at0SLSzEUWciK39NV0N8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0c7cdc08cf8eb8fe83f72bb59a9c9b22","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc038ab9e-476d-4880-b0b4-c13dad8cede2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc038ab9e-476d-4880-b0b4-c13dad8cede2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:36.052785847Z"}]},"request_id":"090e2056-f6a0-4b95-8505-a4a1178858c9","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837918.106446} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0c7cdc08cf8eb8fe83f72bb59a9c9b22","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0c7cdc08cf8eb8fe83f72bb59a9c9b22"} device-1 | {"level":"info","message":"GET /devices/c038ab9e-476d-4880-b0b4-c13dad8cede2? 200 15ms","method":"GET","requestID":"0c7cdc08cf8eb8fe83f72bb59a9c9b22","responseTime":15,"status":200,"url":"/devices/c038ab9e-476d-4880-b0b4-c13dad8cede2?"} gateway-1 | {"time_local":"24/Jul/2024:16:18:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c038ab9e-476d-4880-b0b4-c13dad8cede2? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0c7cdc08cf8eb8fe83f72bb59a9c9b22"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxOH0.CI3VBe09Ehc0Oe_RMul2011at0SLSzEUWciK39NV0N8","level":"info","message":"auth send jwt","requestID":"2feffab4968904f8c1c62d9ba1c30586"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2feffab4968904f8c1c62d9ba1c30586","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"2feffab4968904f8c1c62d9ba1c30586"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":564,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":564,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.96301,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"2feffab4968904f8c1c62d9ba1c30586","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837918,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxOH0.CI3VBe09Ehc0Oe_RMul2011at0SLSzEUWciK39NV0N8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2feffab4968904f8c1c62d9ba1c30586","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/82bff300-5609-48d4-bcd0-7810e6296b3e"},"level":"info","message":"Attempting to run experiment","requestID":"2feffab4968904f8c1c62d9ba1c30586"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/82bff300-5609-48d4-bcd0-7810e6296b3e"},"level":"info","message":"Attempting to book experiment","requestID":"2feffab4968904f8c1c62d9ba1c30586"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/82bff300-5609-48d4-bcd0-7810e6296b3e"},"level":"info","message":"Successfully booked experiment","requestID":"2feffab4968904f8c1c62d9ba1c30586"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"623aa9b0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"623af7d0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":565,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":565,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.148027,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"623aa9b0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837918,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxOH0.CI3VBe09Ehc0Oe_RMul2011at0SLSzEUWciK39NV0N8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"623aa9b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Received request.","req_id":566,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Sent response.","req_id":566,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.079579,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c038ab9e-476d-4880-b0b4-c13dad8cede2","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"623af7d0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/c038ab9e-476d-4880-b0b4-c13dad8cede2","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837918,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxOH0.CI3VBe09Ehc0Oe_RMul2011at0SLSzEUWciK39NV0N8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"623af7d0-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aae3c1c-8450-417c-9c23-ac8584efd4d9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aae3c1c-8450-417c-9c23-ac8584efd4d9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:35.998945353Z"}]},"request_id":"0d93819d-b125-4d9b-80fb-704345c51734","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837918.1656172} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"623aa9b0-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc038ab9e-476d-4880-b0b4-c13dad8cede2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc038ab9e-476d-4880-b0b4-c13dad8cede2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:36.052785847Z"}]},"request_id":"303dfb37-c0d8-4efd-9bf6-de777933f06a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837918.1676493} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"623af7d0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"623aa9b0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9? 200 20ms","method":"GET","requestID":"623aa9b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":20,"status":200,"url":"/devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"623af7d0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/c038ab9e-476d-4880-b0b4-c13dad8cede2? 200 19ms","method":"GET","requestID":"623af7d0-49d8-11ef-9fe8-9113c2c8d024","responseTime":19,"status":200,"url":"/devices/c038ab9e-476d-4880-b0b4-c13dad8cede2?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/82bff300-5609-48d4-bcd0-7810e6296b3e"},"level":"info","message":"Setting up experiment","requestID":"2feffab4968904f8c1c62d9ba1c30586"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/82bff300-5609-48d4-bcd0-7810e6296b3e"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"2feffab4968904f8c1c62d9ba1c30586"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/82bff300-5609-48d4-bcd0-7810e6296b3e"},"level":"info","message":"Successfully locked booking for experiment","requestID":"2feffab4968904f8c1c62d9ba1c30586"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/82bff300-5609-48d4-bcd0-7810e6296b3e"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"2feffab4968904f8c1c62d9ba1c30586"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/82bff300-5609-48d4-bcd0-7810e6296b3e"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"2feffab4968904f8c1c62d9ba1c30586"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/82bff300-5609-48d4-bcd0-7810e6296b3e"},"level":"info","message":"Attempting to update booking for experiment","requestID":"2feffab4968904f8c1c62d9ba1c30586"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/82bff300-5609-48d4-bcd0-7810e6296b3e"},"level":"info","message":"Successfully updated booking for experiment","requestID":"2feffab4968904f8c1c62d9ba1c30586"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/82bff300-5609-48d4-bcd0-7810e6296b3e"},"level":"info","message":"Successfully set up experiment","requestID":"2feffab4968904f8c1c62d9ba1c30586"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6245cd40-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"62461b60-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"62466980-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":567,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":567,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.363541,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:38Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/82bff300-5609-48d4-bcd0-7810e6296b3e"},"level":"info","message":"Successfully running experiment","requestID":"2feffab4968904f8c1c62d9ba1c30586"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6245cd40-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837918,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxOH0.CI3VBe09Ehc0Oe_RMul2011at0SLSzEUWciK39NV0N8"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"6245cd40-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Received request.","req_id":568,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Sent response.","req_id":568,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.665515,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"client_addr":"127.0.0.1:58274","level":"info","msg":"Received request.","req_id":569,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c038ab9e-476d-4880-b0b4-c13dad8cede2","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"62461b60-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/c038ab9e-476d-4880-b0b4-c13dad8cede2","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837918,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxOH0.CI3VBe09Ehc0Oe_RMul2011at0SLSzEUWciK39NV0N8"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"62461b60-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aae3c1c-8450-417c-9c23-ac8584efd4d9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"86835e07-f49f-4524-9d37-c33292d34b5f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837918.2404594} authorization-1 | {"client_addr":"127.0.0.1:58274","level":"info","msg":"Sent response.","req_id":569,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.880783,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"62466980-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9","object_type":"device","rebac_allow":false,"scope_allow":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":"62466980-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aae3c1c-8450-417c-9c23-ac8584efd4d9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aae3c1c-8450-417c-9c23-ac8584efd4d9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:35.998945353Z"}]},"request_id":"90e7abd0-0898-4153-851d-2b5e4fab45b4","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837918.2458076} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"62466980-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9/signaling 200 18ms","method":"POST","requestID":"62466980-49d8-11ef-9fe8-9113c2c8d024","responseTime":18,"status":200,"url":"/devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"6245cd40-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc038ab9e-476d-4880-b0b4-c13dad8cede2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc038ab9e-476d-4880-b0b4-c13dad8cede2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:36.052785847Z"}]},"request_id":"ad889e55-463a-4661-83ad-013e63f96a14","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837918.2493398} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"62461b60-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6249c4e0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6245cd40-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":570,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:38Z"} device-1 | {"level":"info","message":"GET /devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9? 200 30ms","method":"GET","requestID":"6245cd40-49d8-11ef-9fe8-9113c2c8d024","responseTime":30,"status":200,"url":"/devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"62461b60-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/c038ab9e-476d-4880-b0b4-c13dad8cede2? 200 29ms","method":"GET","requestID":"62461b60-49d8-11ef-9fe8-9113c2c8d024","responseTime":29,"status":200,"url":"/devices/c038ab9e-476d-4880-b0b4-c13dad8cede2?"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc038ab9e-476d-4880-b0b4-c13dad8cede2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e26f4b41-7a4b-435e-ac4b-d6758067448d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837918.2603872} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":570,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.734688,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c038ab9e-476d-4880-b0b4-c13dad8cede2","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6249c4e0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c038ab9e-476d-4880-b0b4-c13dad8cede2","object_type":"device","rebac_allow":false,"scope_allow":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":"6249c4e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"624afd60-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6249c4e0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/c038ab9e-476d-4880-b0b4-c13dad8cede2/signaling 200 13ms","method":"POST","requestID":"6249c4e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/devices/c038ab9e-476d-4880-b0b4-c13dad8cede2/signaling"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F82bff300-5609-48d4-bcd0-7810e6296b3e#owner@http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F82bff300-5609-48d4-bcd0-7810e6296b3e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"ce1b8802-bce5-44bd-b5e8-e47f30b45014","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837918.2663674} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"44787790-7bb4-49c1-8572-1c0892bba0dc","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837918.2667944} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":571,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 28ms","method":"POST","requestID":"2feffab4968904f8c1c62d9ba1c30586","responseTime":28,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aae3c1c-8450-417c-9c23-ac8584efd4d9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"661314a2-9ba1-49b5-8c79-3fc066d05d85","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837918.270074} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":571,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.347031,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"624afd60-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"624afd60-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"624afd60-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9/signaling 200 12ms","method":"POST","requestID":"624afd60-49d8-11ef-9fe8-9113c2c8d024","responseTime":12,"status":200,"url":"/devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/82bff300-5609-48d4-bcd0-7810e6296b3e","user":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"2feffab4968904f8c1c62d9ba1c30586"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"624d4750-49d8-11ef-9fe8-9113c2c8d024"} experiment-1 | {"level":"info","message":"POST /experiments? 201 161ms","method":"POST","requestID":"2feffab4968904f8c1c62d9ba1c30586","responseTime":161,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"24/Jul/2024:16:18:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1211","request_time":"0.165","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2feffab4968904f8c1c62d9ba1c30586"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":572,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc038ab9e-476d-4880-b0b4-c13dad8cede2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bcffc8d9-aca3-40f2-9375-314429790a1f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837918.2811909} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":572,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.432749,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:38Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxOH0.CI3VBe09Ehc0Oe_RMul2011at0SLSzEUWciK39NV0N8","level":"info","message":"auth send jwt","requestID":"da62aba8553ec349cae47705f95c1da3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"da62aba8553ec349cae47705f95c1da3","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c038ab9e-476d-4880-b0b4-c13dad8cede2","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"624d4750-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c038ab9e-476d-4880-b0b4-c13dad8cede2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"624d4750-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"da62aba8553ec349cae47705f95c1da3"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":573,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":573,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.627568,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:38Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"624d4750-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/c038ab9e-476d-4880-b0b4-c13dad8cede2/signaling 200 9ms","method":"POST","requestID":"624d4750-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/devices/c038ab9e-476d-4880-b0b4-c13dad8cede2/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"da62aba8553ec349cae47705f95c1da3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837918,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxOH0.CI3VBe09Ehc0Oe_RMul2011at0SLSzEUWciK39NV0N8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"da62aba8553ec349cae47705f95c1da3","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/82bff300-5609-48d4-bcd0-7810e6296b3e"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"2feffab4968904f8c1c62d9ba1c30586"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/82bff300-5609-48d4-bcd0-7810e6296b3e"},"level":"info","message":"Building connection plan","requestID":"2feffab4968904f8c1c62d9ba1c30586"} 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":"e80c2274-ee74-40ee-bcf3-2a3ef06fe692"},{"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":"9a070b03-2873-4a30-984f-79fda1c98654"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"01986bb9-8df5-44d9-b0c2-d3ac67325b8d"}]},"level":"info","message":"Built pairwise service configurations","requestID":"2feffab4968904f8c1c62d9ba1c30586"} experiment-1 | {"data":{"connectionPlan":[{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/c038ab9e-476d-4880-b0b4-c13dad8cede2"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"2feffab4968904f8c1c62d9ba1c30586"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"624f1c10-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aae3c1c-8450-417c-9c23-ac8584efd4d9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aae3c1c-8450-417c-9c23-ac8584efd4d9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:35.998945353Z"}]},"request_id":"e1b9f1d4-aace-40ff-b62f-9a54b79d59c4","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837918.2906523} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"da62aba8553ec349cae47705f95c1da3","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":574,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":574,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.942644,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"624f1c10-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837918,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxOH0.CI3VBe09Ehc0Oe_RMul2011at0SLSzEUWciK39NV0N8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"624f1c10-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"da62aba8553ec349cae47705f95c1da3"} gateway-1 | {"time_local":"24/Jul/2024:16:18:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"da62aba8553ec349cae47705f95c1da3"} device-1 | {"level":"info","message":"GET /devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9? 200 16ms","method":"GET","requestID":"da62aba8553ec349cae47705f95c1da3","responseTime":16,"status":200,"url":"/devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxOH0.CI3VBe09Ehc0Oe_RMul2011at0SLSzEUWciK39NV0N8","level":"info","message":"auth send jwt","requestID":"01a66e8ea803b2ec5024e7e10b9f3a36"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"01a66e8ea803b2ec5024e7e10b9f3a36","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"01a66e8ea803b2ec5024e7e10b9f3a36"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","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%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"b0ed28ac-e765-47f2-a3b7-6eb7b8aafaed","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837918.3060732} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d78e34cb-1f99-4f08-b823-dcd99dc3505a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837918.3064501} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"624f1c10-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":575,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":575,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.637582,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c038ab9e-476d-4880-b0b4-c13dad8cede2","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"01a66e8ea803b2ec5024e7e10b9f3a36","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/c038ab9e-476d-4880-b0b4-c13dad8cede2","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837918,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxOH0.CI3VBe09Ehc0Oe_RMul2011at0SLSzEUWciK39NV0N8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"01a66e8ea803b2ec5024e7e10b9f3a36","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc038ab9e-476d-4880-b0b4-c13dad8cede2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc038ab9e-476d-4880-b0b4-c13dad8cede2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:36.052785847Z"}]},"request_id":"ff58e457-09c3-4e24-be2c-f9c508060996","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837918.314622} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"01a66e8ea803b2ec5024e7e10b9f3a36","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"624f1c10-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"624f1c10-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/a8fdb097-5ebb-4af6-a6b6-eff68dac228e'","requestID":"624f1c10-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/a8fdb097-5ebb-4af6-a6b6-eff68dac228e'","requestID":"624f1c10-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"624f1c10-49d8-11ef-9fe8-9113c2c8d024"} 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":"624f1c10-49d8-11ef-9fe8-9113c2c8d024","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":"getDevicesByDeviceId succeeded","requestID":"01a66e8ea803b2ec5024e7e10b9f3a36"} gateway-1 | {"time_local":"24/Jul/2024:16:18:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c038ab9e-476d-4880-b0b4-c13dad8cede2? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"01a66e8ea803b2ec5024e7e10b9f3a36"} device-1 | {"level":"info","message":"GET /devices/c038ab9e-476d-4880-b0b4-c13dad8cede2? 200 21ms","method":"GET","requestID":"01a66e8ea803b2ec5024e7e10b9f3a36","responseTime":21,"status":200,"url":"/devices/c038ab9e-476d-4880-b0b4-c13dad8cede2?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"624f1c10-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/a8fdb097-5ebb-4af6-a6b6-eff68dac228e","device":"6aae3c1c-8450-417c-9c23-ac8584efd4d9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/a8fdb097-5ebb-4af6-a6b6-eff68dac228e","device":"c038ab9e-476d-4880-b0b4-c13dad8cede2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/82bff300-5609-48d4-bcd0-7810e6296b3e"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"2feffab4968904f8c1c62d9ba1c30586"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"62586ae0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":576,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aae3c1c-8450-417c-9c23-ac8584efd4d9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7efc528e-eb90-495c-bfd4-8ee5194bfe71","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837918.3545125} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":576,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.011416,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"62586ae0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9","object_type":"device","rebac_allow":false,"scope_allow":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":"62586ae0-49d8-11ef-9fe8-9113c2c8d024","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"62586ae0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9/signaling 200 8ms","method":"POST","requestID":"62586ae0-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6259f180-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"device":"c038ab9e-476d-4880-b0b4-c13dad8cede2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"c038ab9e-476d-4880-b0b4-c13dad8cede2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":577,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc038ab9e-476d-4880-b0b4-c13dad8cede2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ab43aeb8-6e84-4b69-a43e-141df56c24e4","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837918.3644087} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":577,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.067782,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c038ab9e-476d-4880-b0b4-c13dad8cede2","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6259f180-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c038ab9e-476d-4880-b0b4-c13dad8cede2","object_type":"device","rebac_allow":false,"scope_allow":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":"6259f180-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6259f180-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/c038ab9e-476d-4880-b0b4-c13dad8cede2/signaling 200 7ms","method":"POST","requestID":"6259f180-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/devices/c038ab9e-476d-4880-b0b4-c13dad8cede2/signaling"} device-1 | {"device":"6aae3c1c-8450-417c-9c23-ac8584efd4d9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"6aae3c1c-8450-417c-9c23-ac8584efd4d9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 118279080863148701 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:YKSa\r\na=ice-pwd:zmBS+nuMWB1Q/otcUom5tuTr\r\na=ice-options:trickle\r\na=fingerprint:sha-256 12:4B:46:E8:DA:44:32:70:4E:5B:4E:86:E6:C8:C1:C8:7A:E0:B5:6E:6B:90:DB:F6:89:72:C9:3E:74:DE:59:94\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"6aae3c1c-8450-417c-9c23-ac8584efd4d9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 8165455559025724442 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:+6NF\r\na=ice-pwd:cP1nvHZYEKnJEwu86dZNSnbv\r\na=ice-options:trickle\r\na=fingerprint:sha-256 40:EF:C3:82:B4:C6:31:99:1D:27:4A:BD:E4:81:6B:3D:B2:87:AB:EF:71:89:8E:0F:69:09:2B:8E:4E:80:68:16\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"c038ab9e-476d-4880-b0b4-c13dad8cede2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:463694230 1 udp 2113937151 524b0366-9aa0-448a-91f9-ef94538f53d1.local 44185 typ host generation 0 ufrag +6NF network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"c038ab9e-476d-4880-b0b4-c13dad8cede2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2676884457 1 udp 1677729535 141.24.211.56 44185 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag +6NF network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"c038ab9e-476d-4880-b0b4-c13dad8cede2","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/c038ab9e-476d-4880-b0b4-c13dad8cede2'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/c038ab9e-476d-4880-b0b4-c13dad8cede2'"} device-1 | {"content":{"candidate":"candidate:290864286 1 udp 2113937151 6349aa55-bb4c-40e5-97d8-b936e42a9319.local 58981 typ host generation 0 ufrag YKSa network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"6aae3c1c-8450-417c-9c23-ac8584efd4d9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2189270413 1 udp 1677729535 141.24.211.56 58981 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag YKSa network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"6aae3c1c-8450-417c-9c23-ac8584efd4d9","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/6aae3c1c-8450-417c-9c23-ac8584efd4d9'"} device-1 | {"device":"6aae3c1c-8450-417c-9c23-ac8584efd4d9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"c038ab9e-476d-4880-b0b4-c13dad8cede2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"6aae3c1c-8450-417c-9c23-ac8584efd4d9","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/a8fdb097-5ebb-4af6-a6b6-eff68dac228e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a8fdb097-5ebb-4af6-a6b6-eff68dac228e","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"c038ab9e-476d-4880-b0b4-c13dad8cede2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"365238ee50f08d5c411965069025b88a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"365238ee50f08d5c411965069025b88a","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/c038ab9e-476d-4880-b0b4-c13dad8cede2"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/a8fdb097-5ebb-4af6-a6b6-eff68dac228e"}}},"level":"info","message":"received a callback","requestID":"365238ee50f08d5c411965069025b88a"} device-1 | {"device":"c038ab9e-476d-4880-b0b4-c13dad8cede2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"6aae3c1c-8450-417c-9c23-ac8584efd4d9","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":"365238ee50f08d5c411965069025b88a","responseTime":4,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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.007","http_referrer":"","http_user_agent":"node-fetch","requestID":"365238ee50f08d5c411965069025b88a"} device-1 | {"device":"c038ab9e-476d-4880-b0b4-c13dad8cede2","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"a8fdb097-5ebb-4af6-a6b6-eff68dac228e","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"a8fdb097-5ebb-4af6-a6b6-eff68dac228e","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/a8fdb097-5ebb-4af6-a6b6-eff68dac228e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a8fdb097-5ebb-4af6-a6b6-eff68dac228e","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"71d621c2a9393e31c4944fb82c51a44f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"71d621c2a9393e31c4944fb82c51a44f","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c038ab9e-476d-4880-b0b4-c13dad8cede2"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/a8fdb097-5ebb-4af6-a6b6-eff68dac228e"}}},"level":"info","message":"received a callback","requestID":"71d621c2a9393e31c4944fb82c51a44f"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"62678610-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":578,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa8fdb097-5ebb-4af6-a6b6-eff68dac228e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e2fb527f-acca-4957-824e-df0c414ed49c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837918.4532545} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":578,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.030497,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a8fdb097-5ebb-4af6-a6b6-eff68dac228e","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"62678610-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/a8fdb097-5ebb-4af6-a6b6-eff68dac228e","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":"62678610-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"62678610-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /peerconnections/a8fdb097-5ebb-4af6-a6b6-eff68dac228e 200 7ms","method":"GET","requestID":"62678610-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/peerconnections/a8fdb097-5ebb-4af6-a6b6-eff68dac228e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 30ms","method":"POST","requestID":"71d621c2a9393e31c4944fb82c51a44f","responseTime":30,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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.033","http_referrer":"","http_user_agent":"node-fetch","requestID":"71d621c2a9393e31c4944fb82c51a44f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"626ba4c0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":579,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc038ab9e-476d-4880-b0b4-c13dad8cede2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8aad9181-c6c3-472a-a385-68d542161a10","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837918.4804094} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":579,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.005067,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c038ab9e-476d-4880-b0b4-c13dad8cede2","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"626ba4c0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c038ab9e-476d-4880-b0b4-c13dad8cede2","object_type":"device","rebac_allow":false,"scope_allow":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":"626ba4c0-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"626ba4c0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/c038ab9e-476d-4880-b0b4-c13dad8cede2/signaling 200 8ms","method":"POST","requestID":"626ba4c0-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/devices/c038ab9e-476d-4880-b0b4-c13dad8cede2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"626d0450-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":580,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aae3c1c-8450-417c-9c23-ac8584efd4d9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8928bb91-d145-4158-b9c1-65f9a29ade15","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837918.4896207} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":580,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.051976,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"626d0450-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9","object_type":"device","rebac_allow":false,"scope_allow":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":"626d0450-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"626d0450-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9/signaling 200 8ms","method":"POST","requestID":"626d0450-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxOH0.CI3VBe09Ehc0Oe_RMul2011at0SLSzEUWciK39NV0N8","level":"info","message":"auth send jwt","requestID":"9f906fe94338e2e5e64909677b3d7b3b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9f906fe94338e2e5e64909677b3d7b3b","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/82bff300-5609-48d4-bcd0-7810e6296b3e","requestID":"9f906fe94338e2e5e64909677b3d7b3b"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":581,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":581,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.882544,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/82bff300-5609-48d4-bcd0-7810e6296b3e","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"9f906fe94338e2e5e64909677b3d7b3b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/82bff300-5609-48d4-bcd0-7810e6296b3e","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837918,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxOH0.CI3VBe09Ehc0Oe_RMul2011at0SLSzEUWciK39NV0N8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9f906fe94338e2e5e64909677b3d7b3b","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/82bff300-5609-48d4-bcd0-7810e6296b3e","requestID":"9f906fe94338e2e5e64909677b3d7b3b"} experiment-1 | {"level":"info","message":"GET /experiments/82bff300-5609-48d4-bcd0-7810e6296b3e 200 13ms","method":"GET","requestID":"9f906fe94338e2e5e64909677b3d7b3b","responseTime":13,"status":200,"url":"/experiments/82bff300-5609-48d4-bcd0-7810e6296b3e"} gateway-1 | {"time_local":"24/Jul/2024:16:18:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/82bff300-5609-48d4-bcd0-7810e6296b3e HTTP/1.1","status": "200","body_bytes_sent":"1284","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9f906fe94338e2e5e64909677b3d7b3b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxOH0.CI3VBe09Ehc0Oe_RMul2011at0SLSzEUWciK39NV0N8","level":"info","message":"auth send jwt","requestID":"4ac35ac3c5a34edf5525d9d9b1cb9e92"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4ac35ac3c5a34edf5525d9d9b1cb9e92","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/82bff300-5609-48d4-bcd0-7810e6296b3e","requestID":"4ac35ac3c5a34edf5525d9d9b1cb9e92"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":582,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":582,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.656749,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/82bff300-5609-48d4-bcd0-7810e6296b3e","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4ac35ac3c5a34edf5525d9d9b1cb9e92","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/82bff300-5609-48d4-bcd0-7810e6296b3e","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837918,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxOH0.CI3VBe09Ehc0Oe_RMul2011at0SLSzEUWciK39NV0N8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4ac35ac3c5a34edf5525d9d9b1cb9e92","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/82bff300-5609-48d4-bcd0-7810e6296b3e"},"level":"info","message":"Attempting to finish experiment","requestID":"4ac35ac3c5a34edf5525d9d9b1cb9e92"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"62798770-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":583,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":583,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":2.505677,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a8fdb097-5ebb-4af6-a6b6-eff68dac228e","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"62798770-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:http://localhost/peerconnections/a8fdb097-5ebb-4af6-a6b6-eff68dac228e","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837918,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxOH0.CI3VBe09Ehc0Oe_RMul2011at0SLSzEUWciK39NV0N8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"62798770-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/a8fdb097-5ebb-4af6-a6b6-eff68dac228e","device":"c038ab9e-476d-4880-b0b4-c13dad8cede2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/a8fdb097-5ebb-4af6-a6b6-eff68dac228e","device":"6aae3c1c-8450-417c-9c23-ac8584efd4d9","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/a8fdb097-5ebb-4af6-a6b6-eff68dac228e' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/a8fdb097-5ebb-4af6-a6b6-eff68dac228e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a8fdb097-5ebb-4af6-a6b6-eff68dac228e","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"de5969326fa91fca4985922b2fd87987","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"de5969326fa91fca4985922b2fd87987","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"82167f192e12128bddf1f3fda35ff5cc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c038ab9e-476d-4880-b0b4-c13dad8cede2"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/a8fdb097-5ebb-4af6-a6b6-eff68dac228e"}}},"level":"info","message":"received a callback","requestID":"de5969326fa91fca4985922b2fd87987"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa8fdb097-5ebb-4af6-a6b6-eff68dac228e': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa8fdb097-5ebb-4af6-a6b6-eff68dac228e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"8fe1538c-afef-4b56-bfbe-20fe20f22963","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837918.5953426} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"82167f192e12128bddf1f3fda35ff5cc","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"63935af3-a9a0-45cc-b1f7-440ecb2d37fc","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837918.596187} 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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c038ab9e-476d-4880-b0b4-c13dad8cede2"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/a8fdb097-5ebb-4af6-a6b6-eff68dac228e"}}},"level":"info","message":"received a callback","requestID":"82167f192e12128bddf1f3fda35ff5cc"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"62798770-49d8-11ef-9fe8-9113c2c8d024","responseTime":17,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"a8fdb097-5ebb-4af6-a6b6-eff68dac228e","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"62798770-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"DELETE /peerconnections/a8fdb097-5ebb-4af6-a6b6-eff68dac228e 204 47ms","method":"DELETE","requestID":"62798770-49d8-11ef-9fe8-9113c2c8d024","responseTime":47,"status":204,"url":"/peerconnections/a8fdb097-5ebb-4af6-a6b6-eff68dac228e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/82bff300-5609-48d4-bcd0-7810e6296b3e"},"level":"info","message":"Successfully finished experiment","requestID":"4ac35ac3c5a34edf5525d9d9b1cb9e92"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6283e7b0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":584,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc038ab9e-476d-4880-b0b4-c13dad8cede2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8542d9ef-8272-49a5-80fe-3fbd3b4da667","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837918.641647} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":584,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.572982,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c038ab9e-476d-4880-b0b4-c13dad8cede2","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6283e7b0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c038ab9e-476d-4880-b0b4-c13dad8cede2","object_type":"device","rebac_allow":false,"scope_allow":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":"6283e7b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6283e7b0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/c038ab9e-476d-4880-b0b4-c13dad8cede2/signaling 200 13ms","method":"POST","requestID":"6283e7b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/devices/c038ab9e-476d-4880-b0b4-c13dad8cede2/signaling"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F82bff300-5609-48d4-bcd0-7810e6296b3e': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F82bff300-5609-48d4-bcd0-7810e6296b3e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"cb5019fb-df33-4443-8320-2978d64de46c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837918.648439} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ab321772-042c-46f7-a8a3-f5e58b2885ba","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837918.6489522} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"628658b0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"4ac35ac3c5a34edf5525d9d9b1cb9e92","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":585,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aae3c1c-8450-417c-9c23-ac8584efd4d9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6ac83a12-da9c-49f9-b4bf-8b853fa4b6f9","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837918.6586237} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":585,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.775388,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"628658b0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9","object_type":"device","rebac_allow":false,"scope_allow":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":"628658b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"628658b0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9/signaling 200 13ms","method":"POST","requestID":"628658b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/devices/6aae3c1c-8450-417c-9c23-ac8584efd4d9/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/82bff300-5609-48d4-bcd0-7810e6296b3e","requestID":"4ac35ac3c5a34edf5525d9d9b1cb9e92"} gateway-1 | {"time_local":"24/Jul/2024:16:18:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/82bff300-5609-48d4-bcd0-7810e6296b3e 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":"4ac35ac3c5a34edf5525d9d9b1cb9e92"} experiment-1 | {"level":"info","message":"DELETE /experiments/82bff300-5609-48d4-bcd0-7810e6296b3e 204 170ms","method":"DELETE","requestID":"4ac35ac3c5a34edf5525d9d9b1cb9e92","responseTime":170,"status":204,"url":"/experiments/82bff300-5609-48d4-bcd0-7810e6296b3e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 132ms","method":"POST","requestID":"de5969326fa91fca4985922b2fd87987","responseTime":132,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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.136","http_referrer":"","http_user_agent":"node-fetch","requestID":"de5969326fa91fca4985922b2fd87987"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 128ms","method":"POST","requestID":"82167f192e12128bddf1f3fda35ff5cc","responseTime":128,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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.137","http_referrer":"","http_user_agent":"node-fetch","requestID":"82167f192e12128bddf1f3fda35ff5cc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxOH0.CI3VBe09Ehc0Oe_RMul2011at0SLSzEUWciK39NV0N8","level":"info","message":"auth send jwt","requestID":"80f35aa2eb199a9545fc7515d13040c5"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"80f35aa2eb199a9545fc7515d13040c5","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"80f35aa2eb199a9545fc7515d13040c5"} gateway-1 | {"time_local":"24/Jul/2024:16:18:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2849","request_time":"0.686","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"f3fcbe72bdc12f19ae63657258bafcff"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":586,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":586,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":3.181893,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:38Z"} gateway-1 | {"time_local":"24/Jul/2024:16:18:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2846","request_time":"0.701","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"1e27b67a8efbda8431cfb1102bc75f9d"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"80f35aa2eb199a9545fc7515d13040c5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837918,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxOH0.CI3VBe09Ehc0Oe_RMul2011at0SLSzEUWciK39NV0N8"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"80f35aa2eb199a9545fc7515d13040c5","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/6aae3c1c-8450-417c-9c23-ac8584efd4d9' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/c038ab9e-476d-4880-b0b4-c13dad8cede2' 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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0261b44-1c59-4f54-9bb9-058bc3ad9388","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"5dce240a-fb18-4ed8-804b-7b3c90f02a4a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837918.7544582} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"80f35aa2eb199a9545fc7515d13040c5","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5d53aedc-f582-47ee-a30f-68331d5917a2","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837918.7583208} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"80f35aa2eb199a9545fc7515d13040c5","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0261b44-1c59-4f54-9bb9-058bc3ad9388","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"1761feff-213c-4285-9f4d-a1e274abee56","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837918.7678893} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"97dcc4f6-301d-471a-8597-a4c00abb9eb9","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837918.768287} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"80f35aa2eb199a9545fc7515d13040c5","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0261b44-1c59-4f54-9bb9-058bc3ad9388","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0261b44-1c59-4f54-9bb9-058bc3ad9388","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:38.767864798Z"}]},"request_id":"e99f8007-4a9a-4ca1-bca3-6f0f9241f4ae","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837918.7722712} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"80f35aa2eb199a9545fc7515d13040c5","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"80f35aa2eb199a9545fc7515d13040c5"} gateway-1 | {"time_local":"24/Jul/2024:16:18:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"80f35aa2eb199a9545fc7515d13040c5"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"80f35aa2eb199a9545fc7515d13040c5","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxOH0.CI3VBe09Ehc0Oe_RMul2011at0SLSzEUWciK39NV0N8","level":"info","message":"auth send jwt","requestID":"921be769699f1512fc87b5028e4bed54"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"921be769699f1512fc87b5028e4bed54","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"921be769699f1512fc87b5028e4bed54"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":587,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":587,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.739926,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"921be769699f1512fc87b5028e4bed54","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837918,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkxOH0.CI3VBe09Ehc0Oe_RMul2011at0SLSzEUWciK39NV0N8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"921be769699f1512fc87b5028e4bed54","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"75a29461-fa0b-4c92-9d02-132126d691e3","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837918.796995} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"921be769699f1512fc87b5028e4bed54","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2cb091bb-9fc7-4a1c-9243-1af92626eda7","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837918.8029914} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"921be769699f1512fc87b5028e4bed54","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"b69687e8-c64f-483a-9f18-eb6523ae59a5","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837918.8208394} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"000d9fab-09e5-4699-be05-1e935ca5f4ea","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837918.8211486} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"921be769699f1512fc87b5028e4bed54","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:38.820809429Z"}]},"request_id":"3fb96a26-ea6c-47bc-b8de-8b89cb8a1cb9","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837918.826248} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"921be769699f1512fc87b5028e4bed54","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"921be769699f1512fc87b5028e4bed54"} gateway-1 | {"time_local":"24/Jul/2024:16:18:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"921be769699f1512fc87b5028e4bed54"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"921be769699f1512fc87b5028e4bed54","responseTime":50,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fe367a185f433c5b240ad2fd12f9fe21","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"fe367a185f433c5b240ad2fd12f9fe21","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Jul/2024:16:18:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e/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":"fe367a185f433c5b240ad2fd12f9fe21"} device-1 | {"level":"info","message":"OPTIONS /devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e/websocket 200 2ms","method":"OPTIONS","requestID":"fe367a185f433c5b240ad2fd12f9fe21","responseTime":2,"status":200,"url":"/devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyMH0.k1UdnjSTJ8XYZ3SN33Fitvart7KpBqKkXCtEsUJjAtY","level":"info","message":"auth send jwt","requestID":"1106a948debae947eca2e0f8d68639ab"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1106a948debae947eca2e0f8d68639ab","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"1106a948debae947eca2e0f8d68639ab"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":588,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:40Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":588,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.659467,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"1106a948debae947eca2e0f8d68639ab","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837920,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyMH0.k1UdnjSTJ8XYZ3SN33Fitvart7KpBqKkXCtEsUJjAtY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1106a948debae947eca2e0f8d68639ab","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1184e0ecc9268998e5a6149be6086c41","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"1184e0ecc9268998e5a6149be6086c41","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Jul/2024:16:18:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388/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":"1184e0ecc9268998e5a6149be6086c41"} device-1 | {"level":"info","message":"OPTIONS /devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388/websocket 200 1ms","method":"OPTIONS","requestID":"1184e0ecc9268998e5a6149be6086c41","responseTime":1,"status":200,"url":"/devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyMH0.k1UdnjSTJ8XYZ3SN33Fitvart7KpBqKkXCtEsUJjAtY","level":"info","message":"auth send jwt","requestID":"daa04031bcc10ad01561b9b84270feb3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"daa04031bcc10ad01561b9b84270feb3","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"daa04031bcc10ad01561b9b84270feb3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"1106a948debae947eca2e0f8d68639ab"} gateway-1 | {"time_local":"24/Jul/2024:16:18:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e/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":"1106a948debae947eca2e0f8d68639ab"} device-1 | {"level":"info","message":"POST /devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e/websocket 200 21ms","method":"POST","requestID":"1106a948debae947eca2e0f8d68639ab","responseTime":21,"status":200,"url":"/devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e/websocket"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":589,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:40Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":589,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.210097,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"daa04031bcc10ad01561b9b84270feb3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837920,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyMH0.k1UdnjSTJ8XYZ3SN33Fitvart7KpBqKkXCtEsUJjAtY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"daa04031bcc10ad01561b9b84270feb3","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"daa04031bcc10ad01561b9b84270feb3"} device-1 | {"level":"info","message":"POST /devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388/websocket 200 19ms","method":"POST","requestID":"daa04031bcc10ad01561b9b84270feb3","responseTime":19,"status":200,"url":"/devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388/websocket"} gateway-1 | {"time_local":"24/Jul/2024:16:18:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"daa04031bcc10ad01561b9b84270feb3"} device-1 | {"level":"info","message":"device 'http://localhost/devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyMH0.k1UdnjSTJ8XYZ3SN33Fitvart7KpBqKkXCtEsUJjAtY","level":"info","message":"auth send jwt","requestID":"a765f8a98c51859154a917bcaf066eb9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a765f8a98c51859154a917bcaf066eb9","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a765f8a98c51859154a917bcaf066eb9"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":590,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:40Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":590,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.100428,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"a765f8a98c51859154a917bcaf066eb9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837920,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyMH0.k1UdnjSTJ8XYZ3SN33Fitvart7KpBqKkXCtEsUJjAtY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a765f8a98c51859154a917bcaf066eb9","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0261b44-1c59-4f54-9bb9-058bc3ad9388","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0261b44-1c59-4f54-9bb9-058bc3ad9388","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:38.767864798Z"}]},"request_id":"f15d64aa-e33e-4b34-a578-f948831335e9","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837920.844691} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a765f8a98c51859154a917bcaf066eb9","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a765f8a98c51859154a917bcaf066eb9"} gateway-1 | {"time_local":"24/Jul/2024:16:18:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a765f8a98c51859154a917bcaf066eb9"} device-1 | {"level":"info","message":"GET /devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388? 200 15ms","method":"GET","requestID":"a765f8a98c51859154a917bcaf066eb9","responseTime":15,"status":200,"url":"/devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyMH0.k1UdnjSTJ8XYZ3SN33Fitvart7KpBqKkXCtEsUJjAtY","level":"info","message":"auth send jwt","requestID":"1c38957370d503e40ab0d13d75580890"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1c38957370d503e40ab0d13d75580890","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1c38957370d503e40ab0d13d75580890"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":591,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:40Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":591,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.968405,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"1c38957370d503e40ab0d13d75580890","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837920,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyMH0.k1UdnjSTJ8XYZ3SN33Fitvart7KpBqKkXCtEsUJjAtY"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"1c38957370d503e40ab0d13d75580890","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:38.820809429Z"}]},"request_id":"bb79cfdf-c9ce-4053-ae21-c0ad88ce2a9a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837920.8664987} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1c38957370d503e40ab0d13d75580890","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1c38957370d503e40ab0d13d75580890"} gateway-1 | {"time_local":"24/Jul/2024:16:18:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1c38957370d503e40ab0d13d75580890"} device-1 | {"level":"info","message":"GET /devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e? 200 13ms","method":"GET","requestID":"1c38957370d503e40ab0d13d75580890","responseTime":13,"status":200,"url":"/devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyMH0.k1UdnjSTJ8XYZ3SN33Fitvart7KpBqKkXCtEsUJjAtY","level":"info","message":"auth send jwt","requestID":"add0d5950bddb751b8f570fc97c53452"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"add0d5950bddb751b8f570fc97c53452","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"add0d5950bddb751b8f570fc97c53452"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":592,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:40Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":592,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.143144,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:40Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"add0d5950bddb751b8f570fc97c53452","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837920,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyMH0.k1UdnjSTJ8XYZ3SN33Fitvart7KpBqKkXCtEsUJjAtY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"add0d5950bddb751b8f570fc97c53452","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70c381ca-a451-433a-890a-327b59a81d0a"},"level":"info","message":"Attempting to run experiment","requestID":"add0d5950bddb751b8f570fc97c53452"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70c381ca-a451-433a-890a-327b59a81d0a"},"level":"info","message":"Attempting to book experiment","requestID":"add0d5950bddb751b8f570fc97c53452"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70c381ca-a451-433a-890a-327b59a81d0a"},"level":"info","message":"Successfully booked experiment","requestID":"add0d5950bddb751b8f570fc97c53452"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"63e17be0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"63e1ca00-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":593,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:40Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":593,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.638583,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Received request.","req_id":594,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"63e17be0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837920,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyMH0.k1UdnjSTJ8XYZ3SN33Fitvart7KpBqKkXCtEsUJjAtY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"63e17be0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Sent response.","req_id":594,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.55415,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"63e1ca00-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837920,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyMH0.k1UdnjSTJ8XYZ3SN33Fitvart7KpBqKkXCtEsUJjAtY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"63e1ca00-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0261b44-1c59-4f54-9bb9-058bc3ad9388","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0261b44-1c59-4f54-9bb9-058bc3ad9388","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:38.767864798Z"}]},"request_id":"c92209ba-aabb-49d5-b194-d93f95f5ce60","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837920.9383404} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"63e17be0-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:38.820809429Z"}]},"request_id":"06b0e0a5-8575-4cee-b6de-9ec76832d5ce","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837920.9398174} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"63e1ca00-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"63e17be0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388? 200 17ms","method":"GET","requestID":"63e17be0-49d8-11ef-9fe8-9113c2c8d024","responseTime":17,"status":200,"url":"/devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"63e1ca00-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e? 200 16ms","method":"GET","requestID":"63e1ca00-49d8-11ef-9fe8-9113c2c8d024","responseTime":16,"status":200,"url":"/devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70c381ca-a451-433a-890a-327b59a81d0a"},"level":"info","message":"Setting up experiment","requestID":"add0d5950bddb751b8f570fc97c53452"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70c381ca-a451-433a-890a-327b59a81d0a"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"add0d5950bddb751b8f570fc97c53452"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70c381ca-a451-433a-890a-327b59a81d0a"},"level":"info","message":"Successfully locked booking for experiment","requestID":"add0d5950bddb751b8f570fc97c53452"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70c381ca-a451-433a-890a-327b59a81d0a"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"add0d5950bddb751b8f570fc97c53452"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70c381ca-a451-433a-890a-327b59a81d0a"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"add0d5950bddb751b8f570fc97c53452"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70c381ca-a451-433a-890a-327b59a81d0a"},"level":"info","message":"Attempting to update booking for experiment","requestID":"add0d5950bddb751b8f570fc97c53452"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70c381ca-a451-433a-890a-327b59a81d0a"},"level":"info","message":"Successfully updated booking for experiment","requestID":"add0d5950bddb751b8f570fc97c53452"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70c381ca-a451-433a-890a-327b59a81d0a"},"level":"info","message":"Successfully set up experiment","requestID":"add0d5950bddb751b8f570fc97c53452"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"63ec2a40-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"63ec7860-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"63eced90-49d8-11ef-9fe8-9113c2c8d024"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70c381ca-a451-433a-890a-327b59a81d0a"},"level":"info","message":"Successfully running experiment","requestID":"add0d5950bddb751b8f570fc97c53452"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":595,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:41Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":595,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.740089,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:41Z"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Received request.","req_id":596,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"63ec2a40-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837920,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyMH0.k1UdnjSTJ8XYZ3SN33Fitvart7KpBqKkXCtEsUJjAtY"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"63ec2a40-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Sent response.","req_id":596,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.718234,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"63ec7860-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837920,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyMH0.k1UdnjSTJ8XYZ3SN33Fitvart7KpBqKkXCtEsUJjAtY"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"63ec7860-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":597,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:41Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":597,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":6.51207,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:41Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0261b44-1c59-4f54-9bb9-058bc3ad9388","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7f64c8f5-ed00-479c-91bd-6b0d5bd455e5","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837921.0138376} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"63eced90-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388","object_type":"device","rebac_allow":false,"scope_allow":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":"63eced90-49d8-11ef-9fe8-9113c2c8d024","responseTime":15,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0261b44-1c59-4f54-9bb9-058bc3ad9388","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0261b44-1c59-4f54-9bb9-058bc3ad9388","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:38.767864798Z"}]},"request_id":"8264a16f-5512-4701-a841-141fb055d666","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837921.0169425} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:38.820809429Z"}]},"request_id":"dc626a3d-8029-4118-ac36-c56b1613b46a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837921.0203786} authorization-1 | {"level":"info","message":"POST /relations/query 200 11ms","method":"POST","requestID":"63ec2a40-49d8-11ef-9fe8-9113c2c8d024","responseTime":11,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"63ec7860-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"63eced90-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388/signaling 200 25ms","method":"POST","requestID":"63eced90-49d8-11ef-9fe8-9113c2c8d024","responseTime":25,"status":200,"url":"/devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"63f18170-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"63ec2a40-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388? 200 38ms","method":"GET","requestID":"63ec2a40-49d8-11ef-9fe8-9113c2c8d024","responseTime":38,"status":200,"url":"/devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388?"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F70c381ca-a451-433a-890a-327b59a81d0a#owner@http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F70c381ca-a451-433a-890a-327b59a81d0a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"ce42a444-a9f8-423d-bacf-4e6e6057d393","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837921.0350485} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"63ec7860-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"331bf651-87b0-4f2e-9344-2cb024609a16","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837921.035515} device-1 | {"level":"info","message":"GET /devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e? 200 39ms","method":"GET","requestID":"63ec7860-49d8-11ef-9fe8-9113c2c8d024","responseTime":39,"status":200,"url":"/devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e?"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":598,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:41Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 27ms","method":"POST","requestID":"add0d5950bddb751b8f570fc97c53452","responseTime":27,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d2277cb2-c34e-467d-8e6e-b6972217d38e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837921.0388682} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":598,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.656416,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:41Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"63f2e100-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"63f18170-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","object_type":"device","rebac_allow":false,"scope_allow":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":"63f18170-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":599,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:41Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/70c381ca-a451-433a-890a-327b59a81d0a","user":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"add0d5950bddb751b8f570fc97c53452"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0261b44-1c59-4f54-9bb9-058bc3ad9388","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"811f513c-81f4-4559-8a51-d1c28d2e3498","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837921.0474749} gateway-1 | {"time_local":"24/Jul/2024:16:18:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1211","request_time":"0.175","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"add0d5950bddb751b8f570fc97c53452"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"63f18170-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e/signaling 200 18ms","method":"POST","requestID":"63f18170-49d8-11ef-9fe8-9113c2c8d024","responseTime":18,"status":200,"url":"/devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e/signaling"} experiment-1 | {"level":"info","message":"POST /experiments? 201 171ms","method":"POST","requestID":"add0d5950bddb751b8f570fc97c53452","responseTime":171,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":599,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":6.323408,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"63f2e100-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388","object_type":"device","rebac_allow":false,"scope_allow":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":"63f2e100-49d8-11ef-9fe8-9113c2c8d024","responseTime":11,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyMX0.pa3RbtA7i_gPncOLIN3U4A4jMQteUD80xywM-3EJEXs","level":"info","message":"auth send jwt","requestID":"71221f4c24b7bd3fb3debda4b29a21df"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"71221f4c24b7bd3fb3debda4b29a21df","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"63f2e100-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388/signaling 200 17ms","method":"POST","requestID":"63f2e100-49d8-11ef-9fe8-9113c2c8d024","responseTime":17,"status":200,"url":"/devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"71221f4c24b7bd3fb3debda4b29a21df"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":600,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:41Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"63f61550-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":600,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.333105,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"71221f4c24b7bd3fb3debda4b29a21df","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837921,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyMX0.pa3RbtA7i_gPncOLIN3U4A4jMQteUD80xywM-3EJEXs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"71221f4c24b7bd3fb3debda4b29a21df","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":601,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:41Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8cb9fe6e-efac-41e9-bf8e-9aa3851b62ac","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837921.0691788} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0261b44-1c59-4f54-9bb9-058bc3ad9388","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0261b44-1c59-4f54-9bb9-058bc3ad9388","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:38.767864798Z"}]},"request_id":"7165fd62-1881-4d46-8a1a-244504ce51f4","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837921.0692031} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"71221f4c24b7bd3fb3debda4b29a21df","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":601,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.677461,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"63f61550-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"63f61550-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"71221f4c24b7bd3fb3debda4b29a21df"} gateway-1 | {"time_local":"24/Jul/2024:16:18:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.029","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"71221f4c24b7bd3fb3debda4b29a21df"} device-1 | {"level":"info","message":"GET /devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388? 200 21ms","method":"GET","requestID":"71221f4c24b7bd3fb3debda4b29a21df","responseTime":21,"status":200,"url":"/devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"63f61550-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e/signaling 200 18ms","method":"POST","requestID":"63f61550-49d8-11ef-9fe8-9113c2c8d024","responseTime":18,"status":200,"url":"/devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70c381ca-a451-433a-890a-327b59a81d0a"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"add0d5950bddb751b8f570fc97c53452"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70c381ca-a451-433a-890a-327b59a81d0a"},"level":"info","message":"Building connection plan","requestID":"add0d5950bddb751b8f570fc97c53452"} 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":"43ae120c-ceba-4db9-9cec-0acb456158c7"},{"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":"c7e5465d-c776-43a1-9e23-0fd2071d5a4b"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"8bc80fed-3c79-4414-9a09-6178d257f3f0"}]},"level":"info","message":"Built pairwise service configurations","requestID":"add0d5950bddb751b8f570fc97c53452"} experiment-1 | {"data":{"connectionPlan":[{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"add0d5950bddb751b8f570fc97c53452"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"63f949a0-49d8-11ef-9fe8-9113c2c8d024"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyMX0.pa3RbtA7i_gPncOLIN3U4A4jMQteUD80xywM-3EJEXs","level":"info","message":"auth send jwt","requestID":"29c278cb9cbe04a36ea4d0d3150e1781"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"29c278cb9cbe04a36ea4d0d3150e1781","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"29c278cb9cbe04a36ea4d0d3150e1781"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":602,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:41Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":602,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.676637,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:41Z"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Received request.","req_id":603,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"63f949a0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837920,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyMH0.k1UdnjSTJ8XYZ3SN33Fitvart7KpBqKkXCtEsUJjAtY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"63f949a0-49d8-11ef-9fe8-9113c2c8d024","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Sent response.","req_id":603,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.584841,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"29c278cb9cbe04a36ea4d0d3150e1781","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837921,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyMX0.pa3RbtA7i_gPncOLIN3U4A4jMQteUD80xywM-3EJEXs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"29c278cb9cbe04a36ea4d0d3150e1781","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:38.820809429Z"}]},"request_id":"e435086c-6af5-4b17-aebf-8ab629606596","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837921.0913928} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"29c278cb9cbe04a36ea4d0d3150e1781","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"29c278cb9cbe04a36ea4d0d3150e1781"} gateway-1 | {"time_local":"24/Jul/2024:16:18:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"29c278cb9cbe04a36ea4d0d3150e1781"} device-1 | {"level":"info","message":"GET /devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e? 200 11ms","method":"GET","requestID":"29c278cb9cbe04a36ea4d0d3150e1781","responseTime":11,"status":200,"url":"/devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e?"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","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%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"6040d5f3-5520-41ed-bdc7-ec80c0d89850","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837921.0962567} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"19d5c9ce-1601-49ee-8cc5-a8cac539d67b","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837921.0964835} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"63f949a0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"63f949a0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"63f949a0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/f8f8efe0-de4a-4cd2-9694-465fe35b74f1'","requestID":"63f949a0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/f8f8efe0-de4a-4cd2-9694-465fe35b74f1'","requestID":"63f949a0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"63f949a0-49d8-11ef-9fe8-9113c2c8d024"} 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":"63f949a0-49d8-11ef-9fe8-9113c2c8d024","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":"63f949a0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/f8f8efe0-de4a-4cd2-9694-465fe35b74f1","device":"a0261b44-1c59-4f54-9bb9-058bc3ad9388","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/f8f8efe0-de4a-4cd2-9694-465fe35b74f1","device":"416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70c381ca-a451-433a-890a-327b59a81d0a"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"add0d5950bddb751b8f570fc97c53452"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6401fc30-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":604,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:41Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0261b44-1c59-4f54-9bb9-058bc3ad9388","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5f27904c-9f05-4ac1-8aa9-cb9fdf8a5f01","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837921.1433663} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":604,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.262453,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6401fc30-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388","object_type":"device","rebac_allow":false,"scope_allow":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":"6401fc30-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6401fc30-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388/signaling 200 8ms","method":"POST","requestID":"6401fc30-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6403a9e0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":605,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:41Z"} device-1 | {"device":"416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"a0261b44-1c59-4f54-9bb9-058bc3ad9388","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d59af651-b566-4c18-b809-49ed4d2a82aa","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837921.1549165} device-1 | {"content":{"canTrickle":true},"device":"a0261b44-1c59-4f54-9bb9-058bc3ad9388","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":605,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.831562,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6403a9e0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6403a9e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6403a9e0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e/signaling 200 10ms","method":"POST","requestID":"6403a9e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 419945616850482823 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:L0eQ\r\na=ice-pwd:nlfbGoGTYGk6PVQBMbOhL+dS\r\na=ice-options:trickle\r\na=fingerprint:sha-256 1B:4C:8E:57:02:B4:56:D1:25:D4:D5:82:5C:EB:8B:18:14:F9:F6:56:86:FE:27:52:F3:34:83:AD:4E:04:D6:A7\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"a0261b44-1c59-4f54-9bb9-058bc3ad9388","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 8460598184704917313 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:E8EU\r\na=ice-pwd:IDDH3T+Ayg33J/+fJ94B7ge8\r\na=ice-options:trickle\r\na=fingerprint:sha-256 18:58:16:0F:47:7B:FF:AE:FE:D0:ED:F9:BF:35:EB:3E:90:9C:75:6E:CD:B2:48:FC:0D:FD:C3:3F:59:76:BC:C8\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3230199634 1 udp 2113937151 db83741a-b4fd-4fad-a933-1e66d73a9126.local 56538 typ host generation 0 ufrag E8EU network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1403211329 1 udp 1677729535 141.24.211.56 56538 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag E8EU network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","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/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e'"} device-1 | {"content":{"candidate":"candidate:2595227250 1 udp 2113937151 07ec386f-3621-40a2-8b83-63b934a0d45e.local 45235 typ host generation 0 ufrag L0eQ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a0261b44-1c59-4f54-9bb9-058bc3ad9388","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:161195873 1 udp 1677729535 141.24.211.56 45235 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag L0eQ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a0261b44-1c59-4f54-9bb9-058bc3ad9388","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/a0261b44-1c59-4f54-9bb9-058bc3ad9388'"} device-1 | {"device":"a0261b44-1c59-4f54-9bb9-058bc3ad9388","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","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/f8f8efe0-de4a-4cd2-9694-465fe35b74f1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f8f8efe0-de4a-4cd2-9694-465fe35b74f1","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"a0261b44-1c59-4f54-9bb9-058bc3ad9388","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c3a6524adc92e7570f40147f07ac81df","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c3a6524adc92e7570f40147f07ac81df","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/f8f8efe0-de4a-4cd2-9694-465fe35b74f1"}}},"level":"info","message":"received a callback","requestID":"c3a6524adc92e7570f40147f07ac81df"} device-1 | {"device":"a0261b44-1c59-4f54-9bb9-058bc3ad9388","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"c3a6524adc92e7570f40147f07ac81df","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"c3a6524adc92e7570f40147f07ac81df"} device-1 | {"data":{"peerconnection":"f8f8efe0-de4a-4cd2-9694-465fe35b74f1","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"f8f8efe0-de4a-4cd2-9694-465fe35b74f1","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/f8f8efe0-de4a-4cd2-9694-465fe35b74f1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f8f8efe0-de4a-4cd2-9694-465fe35b74f1","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c49427edfd14622869654a72e0fb9519","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c49427edfd14622869654a72e0fb9519","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/f8f8efe0-de4a-4cd2-9694-465fe35b74f1"}}},"level":"info","message":"received a callback","requestID":"c49427edfd14622869654a72e0fb9519"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"640e5840-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":606,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:41Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff8f8efe0-de4a-4cd2-9694-465fe35b74f1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f0c1fe8e-e504-470c-a7c0-ffcbaa6abb04","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837921.2242954} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":606,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":1.994764,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f8f8efe0-de4a-4cd2-9694-465fe35b74f1","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"640e5840-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/f8f8efe0-de4a-4cd2-9694-465fe35b74f1","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":"640e5840-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"640e5840-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /peerconnections/f8f8efe0-de4a-4cd2-9694-465fe35b74f1 200 7ms","method":"GET","requestID":"640e5840-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/peerconnections/f8f8efe0-de4a-4cd2-9694-465fe35b74f1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 29ms","method":"POST","requestID":"c49427edfd14622869654a72e0fb9519","responseTime":29,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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":"c49427edfd14622869654a72e0fb9519"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"64124fe0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":607,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:41Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f7a0dd4c-0a38-4861-b84d-71e9fdc884c3","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837921.2503757} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":607,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.635405,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"64124fe0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"64124fe0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"64124fe0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e/signaling 200 8ms","method":"POST","requestID":"64124fe0-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6413d680-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":608,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:41Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0261b44-1c59-4f54-9bb9-058bc3ad9388","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7d97cb6b-b38e-4f3b-b1d7-ad7f667890c0","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837921.2607796} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":608,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.258588,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6413d680-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388","object_type":"device","rebac_allow":false,"scope_allow":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":"6413d680-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6413d680-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388/signaling 200 8ms","method":"POST","requestID":"6413d680-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyMX0.pa3RbtA7i_gPncOLIN3U4A4jMQteUD80xywM-3EJEXs","level":"info","message":"auth send jwt","requestID":"252edbc1c2c1461310604cd958ef7922"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"252edbc1c2c1461310604cd958ef7922","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/70c381ca-a451-433a-890a-327b59a81d0a","requestID":"252edbc1c2c1461310604cd958ef7922"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":609,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:41Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":609,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.774581,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/70c381ca-a451-433a-890a-327b59a81d0a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"252edbc1c2c1461310604cd958ef7922","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/70c381ca-a451-433a-890a-327b59a81d0a","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837921,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyMX0.pa3RbtA7i_gPncOLIN3U4A4jMQteUD80xywM-3EJEXs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"252edbc1c2c1461310604cd958ef7922","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/70c381ca-a451-433a-890a-327b59a81d0a","requestID":"252edbc1c2c1461310604cd958ef7922"} gateway-1 | {"time_local":"24/Jul/2024:16:18:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/70c381ca-a451-433a-890a-327b59a81d0a HTTP/1.1","status": "200","body_bytes_sent":"1284","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"252edbc1c2c1461310604cd958ef7922"} experiment-1 | {"level":"info","message":"GET /experiments/70c381ca-a451-433a-890a-327b59a81d0a 200 10ms","method":"GET","requestID":"252edbc1c2c1461310604cd958ef7922","responseTime":10,"status":200,"url":"/experiments/70c381ca-a451-433a-890a-327b59a81d0a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyMX0.pa3RbtA7i_gPncOLIN3U4A4jMQteUD80xywM-3EJEXs","level":"info","message":"auth send jwt","requestID":"85cf98ef7e3f75a165af1a57292ab2b6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"85cf98ef7e3f75a165af1a57292ab2b6","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/70c381ca-a451-433a-890a-327b59a81d0a","requestID":"85cf98ef7e3f75a165af1a57292ab2b6"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":610,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:41Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":610,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.691669,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:41Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/70c381ca-a451-433a-890a-327b59a81d0a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"85cf98ef7e3f75a165af1a57292ab2b6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/70c381ca-a451-433a-890a-327b59a81d0a","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837921,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyMX0.pa3RbtA7i_gPncOLIN3U4A4jMQteUD80xywM-3EJEXs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"85cf98ef7e3f75a165af1a57292ab2b6","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70c381ca-a451-433a-890a-327b59a81d0a"},"level":"info","message":"Attempting to finish experiment","requestID":"85cf98ef7e3f75a165af1a57292ab2b6"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"641f2120-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":611,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:41Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":611,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.695214,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:41Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f8f8efe0-de4a-4cd2-9694-465fe35b74f1","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"641f2120-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:http://localhost/peerconnections/f8f8efe0-de4a-4cd2-9694-465fe35b74f1","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837921,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyMX0.pa3RbtA7i_gPncOLIN3U4A4jMQteUD80xywM-3EJEXs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"641f2120-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/f8f8efe0-de4a-4cd2-9694-465fe35b74f1","device":"416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/f8f8efe0-de4a-4cd2-9694-465fe35b74f1","device":"a0261b44-1c59-4f54-9bb9-058bc3ad9388","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/f8f8efe0-de4a-4cd2-9694-465fe35b74f1' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/f8f8efe0-de4a-4cd2-9694-465fe35b74f1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f8f8efe0-de4a-4cd2-9694-465fe35b74f1","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff8f8efe0-de4a-4cd2-9694-465fe35b74f1': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff8f8efe0-de4a-4cd2-9694-465fe35b74f1","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"527ad815-f792-4e5d-bfe5-cd693f504a54","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837921.347502} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ea1ca07c-ae05-4cd5-a369-ddfbaff4426d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837921.3476808} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bb3dcbb070fc447d3aa15c896eef34be","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"bb3dcbb070fc447d3aa15c896eef34be","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"641f2120-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/f8f8efe0-de4a-4cd2-9694-465fe35b74f1"}}},"level":"info","message":"received a callback","requestID":"bb3dcbb070fc447d3aa15c896eef34be"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c6c83209643dbfc118475a5383ddf7b2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c6c83209643dbfc118475a5383ddf7b2","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/f8f8efe0-de4a-4cd2-9694-465fe35b74f1"}}},"level":"info","message":"received a callback","requestID":"c6c83209643dbfc118475a5383ddf7b2"} device-1 | {"data":{"peerconnection":"f8f8efe0-de4a-4cd2-9694-465fe35b74f1","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"641f2120-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"DELETE /peerconnections/f8f8efe0-de4a-4cd2-9694-465fe35b74f1 204 39ms","method":"DELETE","requestID":"641f2120-49d8-11ef-9fe8-9113c2c8d024","responseTime":39,"status":204,"url":"/peerconnections/f8f8efe0-de4a-4cd2-9694-465fe35b74f1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70c381ca-a451-433a-890a-327b59a81d0a"},"level":"info","message":"Successfully finished experiment","requestID":"85cf98ef7e3f75a165af1a57292ab2b6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"64289700-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":612,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:41Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4373bd12-c258-49e9-b10c-f2bebb9ea897","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837921.3989372} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":612,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.017131,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"64289700-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e","object_type":"device","rebac_allow":false,"scope_allow":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":"64289700-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"64289700-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F70c381ca-a451-433a-890a-327b59a81d0a': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F70c381ca-a451-433a-890a-327b59a81d0a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"bcd84bda-70b0-42bb-bc1e-d623132294f2","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837921.4060187} device-1 | {"level":"info","message":"POST /devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e/signaling 200 14ms","method":"POST","requestID":"64289700-49d8-11ef-9fe8-9113c2c8d024","responseTime":14,"status":200,"url":"/devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e/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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5603716c-ef06-468b-869c-811b3acb7cc4","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837921.4067209} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"85cf98ef7e3f75a165af1a57292ab2b6","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"642b5620-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":613,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:41Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0261b44-1c59-4f54-9bb9-058bc3ad9388","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"04599e93-f961-407d-b46e-b1eb0e45b5f3","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837921.4167585} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":613,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.799431,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"642b5620-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388","object_type":"device","rebac_allow":false,"scope_allow":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":"642b5620-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"642b5620-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388/signaling 200 13ms","method":"POST","requestID":"642b5620-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/devices/a0261b44-1c59-4f54-9bb9-058bc3ad9388/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/70c381ca-a451-433a-890a-327b59a81d0a","requestID":"85cf98ef7e3f75a165af1a57292ab2b6"} gateway-1 | {"time_local":"24/Jul/2024:16:18:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/70c381ca-a451-433a-890a-327b59a81d0a 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":"85cf98ef7e3f75a165af1a57292ab2b6"} experiment-1 | {"level":"info","message":"DELETE /experiments/70c381ca-a451-433a-890a-327b59a81d0a 204 159ms","method":"DELETE","requestID":"85cf98ef7e3f75a165af1a57292ab2b6","responseTime":159,"status":204,"url":"/experiments/70c381ca-a451-433a-890a-327b59a81d0a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 134ms","method":"POST","requestID":"bb3dcbb070fc447d3aa15c896eef34be","responseTime":134,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.137","http_referrer":"","http_user_agent":"node-fetch","requestID":"bb3dcbb070fc447d3aa15c896eef34be"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 134ms","method":"POST","requestID":"c6c83209643dbfc118475a5383ddf7b2","responseTime":134,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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.138","http_referrer":"","http_user_agent":"node-fetch","requestID":"c6c83209643dbfc118475a5383ddf7b2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyMX0.pa3RbtA7i_gPncOLIN3U4A4jMQteUD80xywM-3EJEXs","level":"info","message":"auth send jwt","requestID":"e633cca7feaabbcb1859e58cc50a0ad3"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"e633cca7feaabbcb1859e58cc50a0ad3","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e633cca7feaabbcb1859e58cc50a0ad3"} gateway-1 | {"time_local":"24/Jul/2024:16:18:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2846","request_time":"0.696","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"13651139dd5ba47f4040ec374bdb24dd"} gateway-1 | {"time_local":"24/Jul/2024:16:18:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2850","request_time":"0.681","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"1cb0e75a47cdcbb9ea220093960c4e21"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":614,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:41Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":614,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.93679,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"e633cca7feaabbcb1859e58cc50a0ad3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837921,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyMX0.pa3RbtA7i_gPncOLIN3U4A4jMQteUD80xywM-3EJEXs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e633cca7feaabbcb1859e58cc50a0ad3","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/a0261b44-1c59-4f54-9bb9-058bc3ad9388' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/416756ea-7f85-4dae-94a1-2bc0c2f3eb0e' 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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08adc5be-c9a1-4cf3-b818-a391e6ea03f9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"3508ec61-7615-42a8-9f56-67c54e837422","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837921.5106914} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e633cca7feaabbcb1859e58cc50a0ad3","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b05f154f-3e79-45bf-bb51-d78dd138bf79","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837921.5152617} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e633cca7feaabbcb1859e58cc50a0ad3","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08adc5be-c9a1-4cf3-b818-a391e6ea03f9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"c96be5b0-9c43-4820-87b2-45aefa77aa46","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837921.5271707} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7fe6dc58-b604-4b54-9db6-b3e389f01b60","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837921.5273426} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"e633cca7feaabbcb1859e58cc50a0ad3","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08adc5be-c9a1-4cf3-b818-a391e6ea03f9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08adc5be-c9a1-4cf3-b818-a391e6ea03f9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:41.527139054Z"}]},"request_id":"7431cfbc-c500-476d-b063-493453815894","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837921.5313902} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e633cca7feaabbcb1859e58cc50a0ad3","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e633cca7feaabbcb1859e58cc50a0ad3"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"e633cca7feaabbcb1859e58cc50a0ad3","responseTime":41,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Jul/2024:16:18:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e633cca7feaabbcb1859e58cc50a0ad3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyMX0.pa3RbtA7i_gPncOLIN3U4A4jMQteUD80xywM-3EJEXs","level":"info","message":"auth send jwt","requestID":"2db429d1b237688b9f466aee67aa0d9f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2db429d1b237688b9f466aee67aa0d9f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"2db429d1b237688b9f466aee67aa0d9f"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":615,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:41Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":615,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.737636,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"2db429d1b237688b9f466aee67aa0d9f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837921,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyMX0.pa3RbtA7i_gPncOLIN3U4A4jMQteUD80xywM-3EJEXs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2db429d1b237688b9f466aee67aa0d9f","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"486f1a1f-e4fa-4342-ac0e-d4e49834d998","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837921.5595453} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"2db429d1b237688b9f466aee67aa0d9f","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3440758d-fafc-41e4-a044-761e7ad7accc","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837921.5646858} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"2db429d1b237688b9f466aee67aa0d9f","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"928cf687-3365-44c3-bbd7-48d0e562ff43","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837921.5746033} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"eebca557-d74a-43a2-8f87-893565c30dfb","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837921.5746906} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"2db429d1b237688b9f466aee67aa0d9f","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:41.574576121Z"}]},"request_id":"0194af9f-dc5d-4897-b2f8-c21af6c5d71c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837921.5793643} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2db429d1b237688b9f466aee67aa0d9f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2db429d1b237688b9f466aee67aa0d9f"} gateway-1 | {"time_local":"24/Jul/2024:16:18:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2db429d1b237688b9f466aee67aa0d9f"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"2db429d1b237688b9f466aee67aa0d9f","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyMn0.bNmNByQJo8-UFzA1K-Xik3CF3-UKeCXEA7vj7pMwdXc","level":"info","message":"auth send jwt","requestID":"f23afca4aa9e1c9e5212e5f220038d03"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f23afca4aa9e1c9e5212e5f220038d03","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f23afca4aa9e1c9e5212e5f220038d03"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":616,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:42Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":616,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.817235,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:42Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"f23afca4aa9e1c9e5212e5f220038d03","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837922,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyMn0.bNmNByQJo8-UFzA1K-Xik3CF3-UKeCXEA7vj7pMwdXc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f23afca4aa9e1c9e5212e5f220038d03","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:41.574576121Z"}]},"request_id":"a81f97d1-9141-469b-965c-99d0c0c7549e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837922.0836542} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f23afca4aa9e1c9e5212e5f220038d03","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cea57bd4-69aa-4100-bd4c-179d1807f889","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837922.0910044} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"f23afca4aa9e1c9e5212e5f220038d03","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:41.574576121Z"}]},"request_id":"79b16642-3422-47b2-8f1b-278cff091b2c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837922.1043067} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f23afca4aa9e1c9e5212e5f220038d03","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f23afca4aa9e1c9e5212e5f220038d03"} gateway-1 | {"time_local":"24/Jul/2024:16:18:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.044","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"f23afca4aa9e1c9e5212e5f220038d03"} device-1 | {"level":"info","message":"PATCH /devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9 200 38ms","method":"PATCH","requestID":"f23afca4aa9e1c9e5212e5f220038d03","responseTime":38,"status":200,"url":"/devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyMn0.bNmNByQJo8-UFzA1K-Xik3CF3-UKeCXEA7vj7pMwdXc","level":"info","message":"auth send jwt","requestID":"ebabb193577db6ec13edfb038f8d91ce"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ebabb193577db6ec13edfb038f8d91ce","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"ebabb193577db6ec13edfb038f8d91ce"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":617,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:42Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":617,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.142154,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:42Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"ebabb193577db6ec13edfb038f8d91ce","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837922,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyMn0.bNmNByQJo8-UFzA1K-Xik3CF3-UKeCXEA7vj7pMwdXc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ebabb193577db6ec13edfb038f8d91ce","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"ebabb193577db6ec13edfb038f8d91ce"} device-1 | {"level":"info","message":"POST /devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9/websocket 200 22ms","method":"POST","requestID":"ebabb193577db6ec13edfb038f8d91ce","responseTime":22,"status":200,"url":"/devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9/websocket"} gateway-1 | {"time_local":"24/Jul/2024:16:18:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"ebabb193577db6ec13edfb038f8d91ce"} device-1 | {"level":"info","message":"device 'http://localhost/devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d044e14cfbc866bc1993d04a3727b3d1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d044e14cfbc866bc1993d04a3727b3d1","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Jul/2024:16:18:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9/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":"d044e14cfbc866bc1993d04a3727b3d1"} device-1 | {"level":"info","message":"OPTIONS /devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9/websocket 200 1ms","method":"OPTIONS","requestID":"d044e14cfbc866bc1993d04a3727b3d1","responseTime":1,"status":200,"url":"/devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyM30.G4-3gXo_iTpthV7jkL2C1NKZoSIz4GNGVkKPWKUWBSA","level":"info","message":"auth send jwt","requestID":"26f82e6453c643220f9887210f0fe380"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"26f82e6453c643220f9887210f0fe380","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"26f82e6453c643220f9887210f0fe380"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":618,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:43Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":618,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.265822,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"26f82e6453c643220f9887210f0fe380","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837923,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyM30.G4-3gXo_iTpthV7jkL2C1NKZoSIz4GNGVkKPWKUWBSA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"26f82e6453c643220f9887210f0fe380","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"26f82e6453c643220f9887210f0fe380"} device-1 | {"level":"info","message":"POST /devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9/websocket 200 22ms","method":"POST","requestID":"26f82e6453c643220f9887210f0fe380","responseTime":22,"status":200,"url":"/devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9/websocket"} gateway-1 | {"time_local":"24/Jul/2024:16:18:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9/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":"26f82e6453c643220f9887210f0fe380"} device-1 | {"level":"info","message":"device 'http://localhost/devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyM30.G4-3gXo_iTpthV7jkL2C1NKZoSIz4GNGVkKPWKUWBSA","level":"info","message":"auth send jwt","requestID":"166f507d3d3e8c10ed5a6b921f0fa664"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"166f507d3d3e8c10ed5a6b921f0fa664","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"166f507d3d3e8c10ed5a6b921f0fa664"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":619,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:43Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":619,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.303449,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"166f507d3d3e8c10ed5a6b921f0fa664","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837923,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyM30.G4-3gXo_iTpthV7jkL2C1NKZoSIz4GNGVkKPWKUWBSA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"166f507d3d3e8c10ed5a6b921f0fa664","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08adc5be-c9a1-4cf3-b818-a391e6ea03f9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08adc5be-c9a1-4cf3-b818-a391e6ea03f9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:41.527139054Z"}]},"request_id":"aea771e6-f729-45bd-a4e0-0f8880829e9b","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837923.6189687} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"166f507d3d3e8c10ed5a6b921f0fa664","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"166f507d3d3e8c10ed5a6b921f0fa664"} gateway-1 | {"time_local":"24/Jul/2024:16:18:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"166f507d3d3e8c10ed5a6b921f0fa664"} device-1 | {"level":"info","message":"GET /devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9? 200 18ms","method":"GET","requestID":"166f507d3d3e8c10ed5a6b921f0fa664","responseTime":18,"status":200,"url":"/devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyM30.G4-3gXo_iTpthV7jkL2C1NKZoSIz4GNGVkKPWKUWBSA","level":"info","message":"auth send jwt","requestID":"ed30db89109205dfdc383a040deee4ef"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ed30db89109205dfdc383a040deee4ef","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ed30db89109205dfdc383a040deee4ef"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":620,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:43Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":620,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.30148,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"ed30db89109205dfdc383a040deee4ef","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837923,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyM30.G4-3gXo_iTpthV7jkL2C1NKZoSIz4GNGVkKPWKUWBSA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ed30db89109205dfdc383a040deee4ef","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:41.574576121Z"}]},"request_id":"f3968642-4a91-4fd7-bd48-79df723c92d9","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837923.6435893} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ed30db89109205dfdc383a040deee4ef","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ed30db89109205dfdc383a040deee4ef"} gateway-1 | {"time_local":"24/Jul/2024:16:18:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ed30db89109205dfdc383a040deee4ef"} device-1 | {"level":"info","message":"GET /devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9? 200 17ms","method":"GET","requestID":"ed30db89109205dfdc383a040deee4ef","responseTime":17,"status":200,"url":"/devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyM30.G4-3gXo_iTpthV7jkL2C1NKZoSIz4GNGVkKPWKUWBSA","level":"info","message":"auth send jwt","requestID":"0a8c2052cf7d8cba143e6580271621fb"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0a8c2052cf7d8cba143e6580271621fb","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"0a8c2052cf7d8cba143e6580271621fb"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":621,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:43Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":621,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":2.61642,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:43Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"0a8c2052cf7d8cba143e6580271621fb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837923,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyM30.G4-3gXo_iTpthV7jkL2C1NKZoSIz4GNGVkKPWKUWBSA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0a8c2052cf7d8cba143e6580271621fb","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/003e346b-0184-470c-95c4-4d1f0dd5f60e"},"level":"info","message":"Attempting to run experiment","requestID":"0a8c2052cf7d8cba143e6580271621fb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/003e346b-0184-470c-95c4-4d1f0dd5f60e"},"level":"info","message":"Attempting to book experiment","requestID":"0a8c2052cf7d8cba143e6580271621fb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/003e346b-0184-470c-95c4-4d1f0dd5f60e"},"level":"info","message":"Successfully booked experiment","requestID":"0a8c2052cf7d8cba143e6580271621fb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"65893870-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"65895f80-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":622,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:43Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":622,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.322009,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"65893870-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837923,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyM30.G4-3gXo_iTpthV7jkL2C1NKZoSIz4GNGVkKPWKUWBSA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"65893870-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Received request.","req_id":623,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Sent response.","req_id":623,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.180036,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"65895f80-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837923,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyM30.G4-3gXo_iTpthV7jkL2C1NKZoSIz4GNGVkKPWKUWBSA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"65895f80-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08adc5be-c9a1-4cf3-b818-a391e6ea03f9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08adc5be-c9a1-4cf3-b818-a391e6ea03f9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:41.527139054Z"}]},"request_id":"71afc74f-dace-4d38-8560-5b4e9537b0ba","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837923.7122169} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"65893870-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:41.574576121Z"}]},"request_id":"6ba7ca9b-0e05-4a44-8972-dfb7bbfb926e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837923.7136798} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"65895f80-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"65893870-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9? 200 15ms","method":"GET","requestID":"65893870-49d8-11ef-9fe8-9113c2c8d024","responseTime":15,"status":200,"url":"/devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"65895f80-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9? 200 15ms","method":"GET","requestID":"65895f80-49d8-11ef-9fe8-9113c2c8d024","responseTime":15,"status":200,"url":"/devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/003e346b-0184-470c-95c4-4d1f0dd5f60e"},"level":"info","message":"Setting up experiment","requestID":"0a8c2052cf7d8cba143e6580271621fb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/003e346b-0184-470c-95c4-4d1f0dd5f60e"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"0a8c2052cf7d8cba143e6580271621fb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/003e346b-0184-470c-95c4-4d1f0dd5f60e"},"level":"info","message":"Successfully locked booking for experiment","requestID":"0a8c2052cf7d8cba143e6580271621fb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/003e346b-0184-470c-95c4-4d1f0dd5f60e"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"0a8c2052cf7d8cba143e6580271621fb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/003e346b-0184-470c-95c4-4d1f0dd5f60e"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"0a8c2052cf7d8cba143e6580271621fb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/003e346b-0184-470c-95c4-4d1f0dd5f60e"},"level":"info","message":"Attempting to update booking for experiment","requestID":"0a8c2052cf7d8cba143e6580271621fb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/003e346b-0184-470c-95c4-4d1f0dd5f60e"},"level":"info","message":"Successfully updated booking for experiment","requestID":"0a8c2052cf7d8cba143e6580271621fb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/003e346b-0184-470c-95c4-4d1f0dd5f60e"},"level":"info","message":"Successfully set up experiment","requestID":"0a8c2052cf7d8cba143e6580271621fb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"65940de0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"659434f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"65945c00-49d8-11ef-9fe8-9113c2c8d024"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/003e346b-0184-470c-95c4-4d1f0dd5f60e"},"level":"info","message":"Successfully running experiment","requestID":"0a8c2052cf7d8cba143e6580271621fb"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":624,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:43Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":624,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.954284,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"65940de0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837923,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyM30.G4-3gXo_iTpthV7jkL2C1NKZoSIz4GNGVkKPWKUWBSA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"65940de0-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Received request.","req_id":625,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Sent response.","req_id":625,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.246291,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"659434f0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837923,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyM30.G4-3gXo_iTpthV7jkL2C1NKZoSIz4GNGVkKPWKUWBSA"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"659434f0-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08adc5be-c9a1-4cf3-b818-a391e6ea03f9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08adc5be-c9a1-4cf3-b818-a391e6ea03f9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:41.527139054Z"}]},"request_id":"0427d899-35db-4d16-9d34-ce97128e3a8d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837923.7875667} authorization-1 | {"client_addr":"127.0.0.1:51150","level":"info","msg":"Received request.","req_id":626,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:43Z"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"65940de0-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51150","level":"info","msg":"Sent response.","req_id":626,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.695144,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:43Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:41.574576121Z"}]},"request_id":"75235f4f-eebf-4428-b6b7-85d14ca6ba69","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837923.7905557} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08adc5be-c9a1-4cf3-b818-a391e6ea03f9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2cf0d3e2-7936-455d-bc57-17c960aa983e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837923.790828} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"659434f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"65945c00-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9","object_type":"device","rebac_allow":false,"scope_allow":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":"65945c00-49d8-11ef-9fe8-9113c2c8d024","responseTime":15,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"65940de0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9? 200 22ms","method":"GET","requestID":"65940de0-49d8-11ef-9fe8-9113c2c8d024","responseTime":22,"status":200,"url":"/devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"659434f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9? 200 22ms","method":"GET","requestID":"659434f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":22,"status":200,"url":"/devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"65945c00-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9/signaling 200 22ms","method":"POST","requestID":"65945c00-49d8-11ef-9fe8-9113c2c8d024","responseTime":22,"status":200,"url":"/devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6597de70-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F003e346b-0184-470c-95c4-4d1f0dd5f60e#owner@http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F003e346b-0184-470c-95c4-4d1f0dd5f60e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"e9f7395b-881c-41fd-811e-65b1d083b59f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837923.800227} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"65980580-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5b40da98-cbc2-4dea-8ae1-9123b63db366","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837923.8005445} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"0a8c2052cf7d8cba143e6580271621fb","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":627,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:43Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08adc5be-c9a1-4cf3-b818-a391e6ea03f9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a1d07822-68d2-4283-8400-5f04bcf8f606","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837923.8038585} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":627,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.700458,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Received request.","req_id":628,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6597de70-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6597de70-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ea659411-584e-4f77-8a68-9c9788f2f535","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837923.8071625} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Sent response.","req_id":628,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.299433,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"65980580-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","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":"6597de70-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9/signaling 200 10ms","method":"POST","requestID":"6597de70-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"65980580-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/003e346b-0184-470c-95c4-4d1f0dd5f60e","user":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"0a8c2052cf7d8cba143e6580271621fb"} gateway-1 | {"time_local":"24/Jul/2024:16:18:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1215","request_time":"0.159","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0a8c2052cf7d8cba143e6580271621fb"} experiment-1 | {"level":"info","message":"POST /experiments? 201 152ms","method":"POST","requestID":"0a8c2052cf7d8cba143e6580271621fb","responseTime":152,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"65980580-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9/signaling 200 12ms","method":"POST","requestID":"65980580-49d8-11ef-9fe8-9113c2c8d024","responseTime":12,"status":200,"url":"/devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"659a0150-49d8-11ef-9fe8-9113c2c8d024"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyM30.G4-3gXo_iTpthV7jkL2C1NKZoSIz4GNGVkKPWKUWBSA","level":"info","message":"auth send jwt","requestID":"7bfeb57e6b57e182d3891d010ddd5ef9"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":629,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:43Z"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7bfeb57e6b57e182d3891d010ddd5ef9","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7bfeb57e6b57e182d3891d010ddd5ef9"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7924460a-a4b8-4700-b688-7a2612a18b28","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837923.8187053} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":629,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.835499,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"659a0150-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","object_type":"device","rebac_allow":false,"scope_allow":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":"659a0150-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Received request.","req_id":630,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58270","level":"info","msg":"Sent response.","req_id":630,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.532429,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"7bfeb57e6b57e182d3891d010ddd5ef9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837923,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyM30.G4-3gXo_iTpthV7jkL2C1NKZoSIz4GNGVkKPWKUWBSA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7bfeb57e6b57e182d3891d010ddd5ef9","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"659a0150-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9/signaling 200 14ms","method":"POST","requestID":"659a0150-49d8-11ef-9fe8-9113c2c8d024","responseTime":14,"status":200,"url":"/devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/003e346b-0184-470c-95c4-4d1f0dd5f60e"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"0a8c2052cf7d8cba143e6580271621fb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/003e346b-0184-470c-95c4-4d1f0dd5f60e"},"level":"info","message":"Building connection plan","requestID":"0a8c2052cf7d8cba143e6580271621fb"} 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":"e82c515e-c4a5-4dbf-93e8-70c9cf52b5e7"},{"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":"202fe157-40a3-4827-972d-a18dced3a934"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"7ff332bb-e53b-478f-875d-fb7242ca70ab"}]},"level":"info","message":"Built pairwise service configurations","requestID":"0a8c2052cf7d8cba143e6580271621fb"} experiment-1 | {"data":{"connectionPlan":[{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"0a8c2052cf7d8cba143e6580271621fb"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08adc5be-c9a1-4cf3-b818-a391e6ea03f9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08adc5be-c9a1-4cf3-b818-a391e6ea03f9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:41.527139054Z"}]},"request_id":"d47bf398-ba4a-4947-8402-6171c4f423f2","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837923.8291569} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"659c9960-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7bfeb57e6b57e182d3891d010ddd5ef9","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":631,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:43Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7bfeb57e6b57e182d3891d010ddd5ef9"} gateway-1 | {"time_local":"24/Jul/2024:16:18:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7bfeb57e6b57e182d3891d010ddd5ef9"} device-1 | {"level":"info","message":"GET /devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9? 200 15ms","method":"GET","requestID":"7bfeb57e6b57e182d3891d010ddd5ef9","responseTime":15,"status":200,"url":"/devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9?"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":631,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.911257,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:43Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"659c9960-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837923,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyM30.G4-3gXo_iTpthV7jkL2C1NKZoSIz4GNGVkKPWKUWBSA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"659c9960-49d8-11ef-9fe8-9113c2c8d024","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyM30.G4-3gXo_iTpthV7jkL2C1NKZoSIz4GNGVkKPWKUWBSA","level":"info","message":"auth send jwt","requestID":"4e46801256c7963b052bddc3c13467e7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4e46801256c7963b052bddc3c13467e7","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4e46801256c7963b052bddc3c13467e7"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":632,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:43Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":632,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.117503,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4e46801256c7963b052bddc3c13467e7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837923,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyM30.G4-3gXo_iTpthV7jkL2C1NKZoSIz4GNGVkKPWKUWBSA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4e46801256c7963b052bddc3c13467e7","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","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%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"954793d8-ae72-4ccc-b16f-cb44d83b3152","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837923.843451} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"88f409b7-7c53-49d3-b9bb-24702714e723","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837923.8436332} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"659c9960-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:41.574576121Z"}]},"request_id":"9f0e608e-4d68-4643-93c3-edb9d9e42d63","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837923.8474653} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4e46801256c7963b052bddc3c13467e7","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"659c9960-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"659c9960-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/f1a476f4-5ef2-49a0-be3f-7ce6d217dde3'","requestID":"659c9960-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/f1a476f4-5ef2-49a0-be3f-7ce6d217dde3'","requestID":"659c9960-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"659c9960-49d8-11ef-9fe8-9113c2c8d024"} 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":"659c9960-49d8-11ef-9fe8-9113c2c8d024","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":"getDevicesByDeviceId succeeded","requestID":"4e46801256c7963b052bddc3c13467e7"} device-1 | {"level":"info","message":"GET /devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9? 200 21ms","method":"GET","requestID":"4e46801256c7963b052bddc3c13467e7","responseTime":21,"status":200,"url":"/devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9?"} gateway-1 | {"time_local":"24/Jul/2024:16:18:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4e46801256c7963b052bddc3c13467e7"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"659c9960-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/f1a476f4-5ef2-49a0-be3f-7ce6d217dde3","device":"08adc5be-c9a1-4cf3-b818-a391e6ea03f9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/003e346b-0184-470c-95c4-4d1f0dd5f60e"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"0a8c2052cf7d8cba143e6580271621fb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"65a524e0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":633,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:43Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08adc5be-c9a1-4cf3-b818-a391e6ea03f9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eb819511-a243-41d6-8c11-c0be5f3ccfeb","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837923.8914123} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":633,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.292338,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"65a524e0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"65a524e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"65a524e0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9/signaling 200 9ms","method":"POST","requestID":"65a524e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"65a6d290-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"device":"08adc5be-c9a1-4cf3-b818-a391e6ea03f9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"08adc5be-c9a1-4cf3-b818-a391e6ea03f9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":634,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:43Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ec910760-eeec-4cb2-b9b8-89d2cd082291","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837923.9025395} device-1 | {"content":{"sdp":"v=0\r\no=- 1150859783726702021 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:0/Zr\r\na=ice-pwd:ckI+J5nyjPKzIhh5LB05fDLS\r\na=ice-options:trickle\r\na=fingerprint:sha-256 B2:A5:AB:B3:0B:FF:97:9A:BE:7F:A5:7B:84:79:A1:7E:86:09:22:63:E4:7C:89:C9:07:0A:D1:6A:19:A8:CE:77\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"08adc5be-c9a1-4cf3-b818-a391e6ea03f9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":634,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.167246,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"65a6d290-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","object_type":"device","rebac_allow":false,"scope_allow":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":"65a6d290-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"65a6d290-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9/signaling 200 11ms","method":"POST","requestID":"65a6d290-49d8-11ef-9fe8-9113c2c8d024","responseTime":11,"status":200,"url":"/devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9/signaling"} device-1 | {"device":"08adc5be-c9a1-4cf3-b818-a391e6ea03f9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"f1a476f4-5ef2-49a0-be3f-7ce6d217dde3","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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/f1a476f4-5ef2-49a0-be3f-7ce6d217dde3' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f1a476f4-5ef2-49a0-be3f-7ce6d217dde3","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b07ae1df985499105a11fda2d2d539a3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b07ae1df985499105a11fda2d2d539a3","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/f1a476f4-5ef2-49a0-be3f-7ce6d217dde3"}}},"level":"info","message":"received a callback","requestID":"b07ae1df985499105a11fda2d2d539a3"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"b07ae1df985499105a11fda2d2d539a3","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"b07ae1df985499105a11fda2d2d539a3"} device-1 | {"content":{"candidate":"candidate:2201796356 1 udp 2113937151 bc20b21d-ebf1-4a30-9097-8d298ca03659.local 51374 typ host generation 0 ufrag 0/Zr network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"08adc5be-c9a1-4cf3-b818-a391e6ea03f9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:269950487 1 udp 1677729535 141.24.211.56 51374 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 0/Zr network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"08adc5be-c9a1-4cf3-b818-a391e6ea03f9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2923144677 1 udp 33562623 141.24.210.113 57960 typ relay raddr 141.24.211.56 rport 51374 generation 0 ufrag 0/Zr network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"08adc5be-c9a1-4cf3-b818-a391e6ea03f9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"08adc5be-c9a1-4cf3-b818-a391e6ea03f9","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/08adc5be-c9a1-4cf3-b818-a391e6ea03f9'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9'"} device-1 | {"data":{"peerconnection":"f1a476f4-5ef2-49a0-be3f-7ce6d217dde3","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"08adc5be-c9a1-4cf3-b818-a391e6ea03f9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"f1a476f4-5ef2-49a0-be3f-7ce6d217dde3","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/f1a476f4-5ef2-49a0-be3f-7ce6d217dde3' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f1a476f4-5ef2-49a0-be3f-7ce6d217dde3","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ef09674715f126018df96aec744bb028","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ef09674715f126018df96aec744bb028","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/f1a476f4-5ef2-49a0-be3f-7ce6d217dde3"}}},"level":"info","message":"received a callback","requestID":"ef09674715f126018df96aec744bb028"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"66e32320-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":635,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:45Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff1a476f4-5ef2-49a0-be3f-7ce6d217dde3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c9876038-560e-4041-aba2-5c7eaef576ba","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837925.9746437} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":635,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.214184,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f1a476f4-5ef2-49a0-be3f-7ce6d217dde3","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"66e32320-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/f1a476f4-5ef2-49a0-be3f-7ce6d217dde3","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":"66e32320-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"66e32320-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /peerconnections/f1a476f4-5ef2-49a0-be3f-7ce6d217dde3 200 7ms","method":"GET","requestID":"66e32320-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/peerconnections/f1a476f4-5ef2-49a0-be3f-7ce6d217dde3"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 34ms","method":"POST","requestID":"ef09674715f126018df96aec744bb028","responseTime":34,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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.038","http_referrer":"","http_user_agent":"node-fetch","requestID":"ef09674715f126018df96aec744bb028"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"66e78ff0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":636,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:46Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"82e82dab-0574-41b6-8aee-74d767188350","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837926.0041916} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":636,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.35943,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"66e78ff0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"66e78ff0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"66e78ff0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9/signaling 200 8ms","method":"POST","requestID":"66e78ff0-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"66e964b0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":637,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:46Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08adc5be-c9a1-4cf3-b818-a391e6ea03f9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ca158a0b-de88-461a-9c91-c5dae450a159","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837926.0176349} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":637,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.332588,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"66e964b0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"66e964b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"66e964b0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9/signaling 200 12ms","method":"POST","requestID":"66e964b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":12,"status":200,"url":"/devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyNn0.Vx_QNg3SG9JjrdHncaGGrLVvqyN0bGy15dz89UGtvCs","level":"info","message":"auth send jwt","requestID":"2ff6c521260a3dddda5d3cb2f93d09f6"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2ff6c521260a3dddda5d3cb2f93d09f6","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/003e346b-0184-470c-95c4-4d1f0dd5f60e","requestID":"2ff6c521260a3dddda5d3cb2f93d09f6"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":638,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:46Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":638,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.254999,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/003e346b-0184-470c-95c4-4d1f0dd5f60e","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"2ff6c521260a3dddda5d3cb2f93d09f6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/003e346b-0184-470c-95c4-4d1f0dd5f60e","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837926,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyNn0.Vx_QNg3SG9JjrdHncaGGrLVvqyN0bGy15dz89UGtvCs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2ff6c521260a3dddda5d3cb2f93d09f6","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/003e346b-0184-470c-95c4-4d1f0dd5f60e","requestID":"2ff6c521260a3dddda5d3cb2f93d09f6"} experiment-1 | {"level":"info","message":"GET /experiments/003e346b-0184-470c-95c4-4d1f0dd5f60e 200 15ms","method":"GET","requestID":"2ff6c521260a3dddda5d3cb2f93d09f6","responseTime":15,"status":200,"url":"/experiments/003e346b-0184-470c-95c4-4d1f0dd5f60e"} gateway-1 | {"time_local":"24/Jul/2024:16:18:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/003e346b-0184-470c-95c4-4d1f0dd5f60e HTTP/1.1","status": "200","body_bytes_sent":"1288","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2ff6c521260a3dddda5d3cb2f93d09f6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyNn0.Vx_QNg3SG9JjrdHncaGGrLVvqyN0bGy15dz89UGtvCs","level":"info","message":"auth send jwt","requestID":"d864ca8e429c3b335feb4e58f9ac9574"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d864ca8e429c3b335feb4e58f9ac9574","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/003e346b-0184-470c-95c4-4d1f0dd5f60e","requestID":"d864ca8e429c3b335feb4e58f9ac9574"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":639,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:46Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":639,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.079524,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:46Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/003e346b-0184-470c-95c4-4d1f0dd5f60e","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"d864ca8e429c3b335feb4e58f9ac9574","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/003e346b-0184-470c-95c4-4d1f0dd5f60e","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837926,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyNn0.Vx_QNg3SG9JjrdHncaGGrLVvqyN0bGy15dz89UGtvCs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d864ca8e429c3b335feb4e58f9ac9574","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/003e346b-0184-470c-95c4-4d1f0dd5f60e"},"level":"info","message":"Attempting to finish experiment","requestID":"d864ca8e429c3b335feb4e58f9ac9574"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"66f65d00-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":640,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:46Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":640,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.772927,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:46Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f1a476f4-5ef2-49a0-be3f-7ce6d217dde3","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"66f65d00-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:http://localhost/peerconnections/f1a476f4-5ef2-49a0-be3f-7ce6d217dde3","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837926,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyNn0.Vx_QNg3SG9JjrdHncaGGrLVvqyN0bGy15dz89UGtvCs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"66f65d00-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/f1a476f4-5ef2-49a0-be3f-7ce6d217dde3","device":"08adc5be-c9a1-4cf3-b818-a391e6ea03f9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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/f1a476f4-5ef2-49a0-be3f-7ce6d217dde3' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/f1a476f4-5ef2-49a0-be3f-7ce6d217dde3' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f1a476f4-5ef2-49a0-be3f-7ce6d217dde3","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"376036076716194620eef7bc17ee9f05","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff1a476f4-5ef2-49a0-be3f-7ce6d217dde3': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff1a476f4-5ef2-49a0-be3f-7ce6d217dde3","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"022fe261-6b95-436b-941c-cd004ea8678c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837926.1220593} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2203ae38-7e79-4af4-a173-6978bfe0651a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837926.1224744} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"376036076716194620eef7bc17ee9f05","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"988395c54d541b63184269e6f6497123","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/f1a476f4-5ef2-49a0-be3f-7ce6d217dde3"}}},"level":"info","message":"received a callback","requestID":"376036076716194620eef7bc17ee9f05"} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"66f65d00-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"988395c54d541b63184269e6f6497123","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/f1a476f4-5ef2-49a0-be3f-7ce6d217dde3"}}},"level":"info","message":"received a callback","requestID":"988395c54d541b63184269e6f6497123"} device-1 | {"data":{"peerconnection":"f1a476f4-5ef2-49a0-be3f-7ce6d217dde3","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"66f65d00-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"DELETE /peerconnections/f1a476f4-5ef2-49a0-be3f-7ce6d217dde3 204 51ms","method":"DELETE","requestID":"66f65d00-49d8-11ef-9fe8-9113c2c8d024","responseTime":51,"status":204,"url":"/peerconnections/f1a476f4-5ef2-49a0-be3f-7ce6d217dde3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/003e346b-0184-470c-95c4-4d1f0dd5f60e"},"level":"info","message":"Successfully finished experiment","requestID":"d864ca8e429c3b335feb4e58f9ac9574"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6701ceb0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":641,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:46Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dab1ec39-d335-4864-bbfd-9811617d44a5","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837926.1776278} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":641,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.710302,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6701ceb0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9","object_type":"device","rebac_allow":false,"scope_allow":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":"6701ceb0-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6701ceb0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9/signaling 200 15ms","method":"POST","requestID":"6701ceb0-49d8-11ef-9fe8-9113c2c8d024","responseTime":15,"status":200,"url":"/devices/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9/signaling"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F003e346b-0184-470c-95c4-4d1f0dd5f60e': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F003e346b-0184-470c-95c4-4d1f0dd5f60e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"a81e69d2-2e48-44dc-80e2-0ee739328cbd","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837926.186464} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1fb742d0-238d-48dc-9422-39fad8e7dc40","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837926.1872091} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"d864ca8e429c3b335feb4e58f9ac9574","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"67048dd0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":642,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:46Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08adc5be-c9a1-4cf3-b818-a391e6ea03f9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1717e14f-dbf8-48e0-924a-d1fa64a18d61","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837926.198508} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":642,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.053101,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"67048dd0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9","object_type":"device","rebac_allow":false,"scope_allow":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":"67048dd0-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"67048dd0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9/signaling 200 16ms","method":"POST","requestID":"67048dd0-49d8-11ef-9fe8-9113c2c8d024","responseTime":16,"status":200,"url":"/devices/08adc5be-c9a1-4cf3-b818-a391e6ea03f9/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/003e346b-0184-470c-95c4-4d1f0dd5f60e","requestID":"d864ca8e429c3b335feb4e58f9ac9574"} gateway-1 | {"time_local":"24/Jul/2024:16:18:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/003e346b-0184-470c-95c4-4d1f0dd5f60e HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.183","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d864ca8e429c3b335feb4e58f9ac9574"} gateway-1 | {"time_local":"24/Jul/2024:16:18:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3191","request_time":"4.124","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"79782db7b064c7051e39d4d891cff3bd"} experiment-1 | {"level":"info","message":"DELETE /experiments/003e346b-0184-470c-95c4-4d1f0dd5f60e 204 181ms","method":"DELETE","requestID":"d864ca8e429c3b335feb4e58f9ac9574","responseTime":181,"status":204,"url":"/experiments/003e346b-0184-470c-95c4-4d1f0dd5f60e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 141ms","method":"POST","requestID":"376036076716194620eef7bc17ee9f05","responseTime":141,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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.145","http_referrer":"","http_user_agent":"node-fetch","requestID":"376036076716194620eef7bc17ee9f05"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyNn0.Vx_QNg3SG9JjrdHncaGGrLVvqyN0bGy15dz89UGtvCs","level":"info","message":"auth send jwt","requestID":"f4d932a6601d6a8bd6bddce93e2f2f8e"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f4d932a6601d6a8bd6bddce93e2f2f8e","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 142ms","method":"POST","requestID":"988395c54d541b63184269e6f6497123","responseTime":142,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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.149","http_referrer":"","http_user_agent":"node-fetch","requestID":"988395c54d541b63184269e6f6497123"} device-1 | {"level":"info","message":"postDevices called","requestID":"f4d932a6601d6a8bd6bddce93e2f2f8e"} gateway-1 | {"time_local":"24/Jul/2024:16:18:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2704","request_time":"2.691","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"de4f8a344cf14be0bd501e1288bf361f"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":643,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:46Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":643,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.166526,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"f4d932a6601d6a8bd6bddce93e2f2f8e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837926,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyNn0.Vx_QNg3SG9JjrdHncaGGrLVvqyN0bGy15dz89UGtvCs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f4d932a6601d6a8bd6bddce93e2f2f8e","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/6fc75ef2-4fe7-4af7-9761-352f92bdcdc9' 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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcde9903e-c243-4a70-a193-2dbb721e8915","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"cd76e61f-a74a-473f-b63b-5c9c0e632176","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837926.2896843} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f4d932a6601d6a8bd6bddce93e2f2f8e","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/08adc5be-c9a1-4cf3-b818-a391e6ea03f9' 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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"27664b49-1627-4358-acda-721a6fd4349c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837926.295254} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"f4d932a6601d6a8bd6bddce93e2f2f8e","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcde9903e-c243-4a70-a193-2dbb721e8915","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"93fe4833-5526-47f1-bc3f-7d52bb708085","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837926.3042624} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"495ad894-9789-4300-936c-2f8caf4d196a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837926.3047802} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"f4d932a6601d6a8bd6bddce93e2f2f8e","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcde9903e-c243-4a70-a193-2dbb721e8915","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcde9903e-c243-4a70-a193-2dbb721e8915","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:46.304223627Z"}]},"request_id":"e5e0289b-7f4b-446f-b7f2-e67030f75cbe","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837926.310544} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f4d932a6601d6a8bd6bddce93e2f2f8e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f4d932a6601d6a8bd6bddce93e2f2f8e"} gateway-1 | {"time_local":"24/Jul/2024:16:18:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f4d932a6601d6a8bd6bddce93e2f2f8e"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"f4d932a6601d6a8bd6bddce93e2f2f8e","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyNn0.Vx_QNg3SG9JjrdHncaGGrLVvqyN0bGy15dz89UGtvCs","level":"info","message":"auth send jwt","requestID":"a6c3f4a266566b3f8fccea29e990ffe3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a6c3f4a266566b3f8fccea29e990ffe3","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a6c3f4a266566b3f8fccea29e990ffe3"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":644,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:46Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":644,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.016192,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"a6c3f4a266566b3f8fccea29e990ffe3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837926,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyNn0.Vx_QNg3SG9JjrdHncaGGrLVvqyN0bGy15dz89UGtvCs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a6c3f4a266566b3f8fccea29e990ffe3","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40ffdb3d-e09f-4382-a1ec-f0290421a291","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a1ecd93b-16d7-4c06-9694-f52517d01a51","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837926.3421323} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a6c3f4a266566b3f8fccea29e990ffe3","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dec815b4-fd2a-455c-be98-3fe176b7a568","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837926.3470557} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"a6c3f4a266566b3f8fccea29e990ffe3","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40ffdb3d-e09f-4382-a1ec-f0290421a291","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"aadf0469-2db3-4f34-ac51-ffed69c1b9e5","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837926.3579264} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ba13bd64-7496-4b34-aaf1-5c9cdf01ce4a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837926.3581145} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"a6c3f4a266566b3f8fccea29e990ffe3","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40ffdb3d-e09f-4382-a1ec-f0290421a291","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40ffdb3d-e09f-4382-a1ec-f0290421a291","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:46.357902287Z"}]},"request_id":"0475b9b9-54e8-4a49-9ba9-8f90a5f84ec5","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837926.362583} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a6c3f4a266566b3f8fccea29e990ffe3","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a6c3f4a266566b3f8fccea29e990ffe3"} gateway-1 | {"time_local":"24/Jul/2024:16:18:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a6c3f4a266566b3f8fccea29e990ffe3"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"a6c3f4a266566b3f8fccea29e990ffe3","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyNn0.Vx_QNg3SG9JjrdHncaGGrLVvqyN0bGy15dz89UGtvCs","level":"info","message":"auth send jwt","requestID":"ab5185a44fa74c8223c0952011a3360d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ab5185a44fa74c8223c0952011a3360d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"ab5185a44fa74c8223c0952011a3360d"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":645,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:46Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":645,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.928181,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"ab5185a44fa74c8223c0952011a3360d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837926,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyNn0.Vx_QNg3SG9JjrdHncaGGrLVvqyN0bGy15dz89UGtvCs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ab5185a44fa74c8223c0952011a3360d","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40ffdb3d-e09f-4382-a1ec-f0290421a291","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40ffdb3d-e09f-4382-a1ec-f0290421a291","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:46.357902287Z"}]},"request_id":"1aa81d8b-7847-4c20-9763-2931e67a1285","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837926.856909} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ab5185a44fa74c8223c0952011a3360d","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c5fb69bc-6024-4167-b74d-6a2d47502671","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837926.8631291} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"ab5185a44fa74c8223c0952011a3360d","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40ffdb3d-e09f-4382-a1ec-f0290421a291","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40ffdb3d-e09f-4382-a1ec-f0290421a291","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:46.357902287Z"}]},"request_id":"9e6b571d-7784-474f-9e6e-1cb8f2310268","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837926.8740351} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ab5185a44fa74c8223c0952011a3360d","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"ab5185a44fa74c8223c0952011a3360d"} device-1 | {"level":"info","message":"PATCH /devices/40ffdb3d-e09f-4382-a1ec-f0290421a291 200 34ms","method":"PATCH","requestID":"ab5185a44fa74c8223c0952011a3360d","responseTime":34,"status":200,"url":"/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291"} gateway-1 | {"time_local":"24/Jul/2024:16:18:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/40ffdb3d-e09f-4382-a1ec-f0290421a291 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.038","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"ab5185a44fa74c8223c0952011a3360d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyNn0.Vx_QNg3SG9JjrdHncaGGrLVvqyN0bGy15dz89UGtvCs","level":"info","message":"auth send jwt","requestID":"cd63cd0244b6e0ab06f30f97b0fce008"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"cd63cd0244b6e0ab06f30f97b0fce008","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"cd63cd0244b6e0ab06f30f97b0fce008"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":646,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:46Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":646,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.205865,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"cd63cd0244b6e0ab06f30f97b0fce008","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837926,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyNn0.Vx_QNg3SG9JjrdHncaGGrLVvqyN0bGy15dz89UGtvCs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cd63cd0244b6e0ab06f30f97b0fce008","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"cd63cd0244b6e0ab06f30f97b0fce008"} gateway-1 | {"time_local":"24/Jul/2024:16:18:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/40ffdb3d-e09f-4382-a1ec-f0290421a291/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"cd63cd0244b6e0ab06f30f97b0fce008"} device-1 | {"level":"info","message":"POST /devices/40ffdb3d-e09f-4382-a1ec-f0290421a291/websocket 200 20ms","method":"POST","requestID":"cd63cd0244b6e0ab06f30f97b0fce008","responseTime":20,"status":200,"url":"/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8466275cebf3bc4add1c6d164a00520b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"8466275cebf3bc4add1c6d164a00520b","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Jul/2024:16:18:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/cde9903e-c243-4a70-a193-2dbb721e8915/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":"8466275cebf3bc4add1c6d164a00520b"} device-1 | {"level":"info","message":"OPTIONS /devices/cde9903e-c243-4a70-a193-2dbb721e8915/websocket 200 1ms","method":"OPTIONS","requestID":"8466275cebf3bc4add1c6d164a00520b","responseTime":1,"status":200,"url":"/devices/cde9903e-c243-4a70-a193-2dbb721e8915/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyOH0.OCUIyimr8bTf9bcWiQGAYOwOH6yvP4b2Q-tWYd14cW4","level":"info","message":"auth send jwt","requestID":"8cfb6d61a314e21cf6290e9152a8161e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8cfb6d61a314e21cf6290e9152a8161e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"8cfb6d61a314e21cf6290e9152a8161e"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":647,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:48Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":647,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.209576,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:48Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/cde9903e-c243-4a70-a193-2dbb721e8915","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"8cfb6d61a314e21cf6290e9152a8161e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/cde9903e-c243-4a70-a193-2dbb721e8915","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837928,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyOH0.OCUIyimr8bTf9bcWiQGAYOwOH6yvP4b2Q-tWYd14cW4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8cfb6d61a314e21cf6290e9152a8161e","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"8cfb6d61a314e21cf6290e9152a8161e"} device-1 | {"level":"info","message":"POST /devices/cde9903e-c243-4a70-a193-2dbb721e8915/websocket 200 22ms","method":"POST","requestID":"8cfb6d61a314e21cf6290e9152a8161e","responseTime":22,"status":200,"url":"/devices/cde9903e-c243-4a70-a193-2dbb721e8915/websocket"} gateway-1 | {"time_local":"24/Jul/2024:16:18:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/cde9903e-c243-4a70-a193-2dbb721e8915/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":"8cfb6d61a314e21cf6290e9152a8161e"} device-1 | {"level":"info","message":"device 'http://localhost/devices/cde9903e-c243-4a70-a193-2dbb721e8915' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyOH0.OCUIyimr8bTf9bcWiQGAYOwOH6yvP4b2Q-tWYd14cW4","level":"info","message":"auth send jwt","requestID":"377ecb1f4fc83034d577a977527569f5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"377ecb1f4fc83034d577a977527569f5","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"377ecb1f4fc83034d577a977527569f5"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":648,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:48Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":648,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.297901,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cde9903e-c243-4a70-a193-2dbb721e8915","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"377ecb1f4fc83034d577a977527569f5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/cde9903e-c243-4a70-a193-2dbb721e8915","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837928,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyOH0.OCUIyimr8bTf9bcWiQGAYOwOH6yvP4b2Q-tWYd14cW4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"377ecb1f4fc83034d577a977527569f5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcde9903e-c243-4a70-a193-2dbb721e8915","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcde9903e-c243-4a70-a193-2dbb721e8915","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:46.304223627Z"}]},"request_id":"b3ddeb38-41c8-4961-8e8d-da33780259f6","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837928.4000342} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"377ecb1f4fc83034d577a977527569f5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"377ecb1f4fc83034d577a977527569f5"} gateway-1 | {"time_local":"24/Jul/2024:16:18:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/cde9903e-c243-4a70-a193-2dbb721e8915? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"377ecb1f4fc83034d577a977527569f5"} device-1 | {"level":"info","message":"GET /devices/cde9903e-c243-4a70-a193-2dbb721e8915? 200 17ms","method":"GET","requestID":"377ecb1f4fc83034d577a977527569f5","responseTime":17,"status":200,"url":"/devices/cde9903e-c243-4a70-a193-2dbb721e8915?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyOH0.OCUIyimr8bTf9bcWiQGAYOwOH6yvP4b2Q-tWYd14cW4","level":"info","message":"auth send jwt","requestID":"ec4e4ffa730b6a93ba62f9655d3fcba3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ec4e4ffa730b6a93ba62f9655d3fcba3","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ec4e4ffa730b6a93ba62f9655d3fcba3"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":649,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:48Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":649,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.668177,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"ec4e4ffa730b6a93ba62f9655d3fcba3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837928,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyOH0.OCUIyimr8bTf9bcWiQGAYOwOH6yvP4b2Q-tWYd14cW4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ec4e4ffa730b6a93ba62f9655d3fcba3","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40ffdb3d-e09f-4382-a1ec-f0290421a291","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40ffdb3d-e09f-4382-a1ec-f0290421a291","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:46.357902287Z"}]},"request_id":"fee3184d-35da-4cb2-9fc1-32568b353dbd","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837928.4236536} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ec4e4ffa730b6a93ba62f9655d3fcba3","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ec4e4ffa730b6a93ba62f9655d3fcba3"} device-1 | {"level":"info","message":"GET /devices/40ffdb3d-e09f-4382-a1ec-f0290421a291? 200 17ms","method":"GET","requestID":"ec4e4ffa730b6a93ba62f9655d3fcba3","responseTime":17,"status":200,"url":"/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291?"} gateway-1 | {"time_local":"24/Jul/2024:16:18:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/40ffdb3d-e09f-4382-a1ec-f0290421a291? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ec4e4ffa730b6a93ba62f9655d3fcba3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyOH0.OCUIyimr8bTf9bcWiQGAYOwOH6yvP4b2Q-tWYd14cW4","level":"info","message":"auth send jwt","requestID":"a488c3db15022a080c760d9f4aebd05c"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"a488c3db15022a080c760d9f4aebd05c","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"a488c3db15022a080c760d9f4aebd05c"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":650,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:48Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":650,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.159361,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:48Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"a488c3db15022a080c760d9f4aebd05c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837928,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyOH0.OCUIyimr8bTf9bcWiQGAYOwOH6yvP4b2Q-tWYd14cW4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a488c3db15022a080c760d9f4aebd05c","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83726f08-1659-4e9e-8119-31bbecba3f4f"},"level":"info","message":"Attempting to run experiment","requestID":"a488c3db15022a080c760d9f4aebd05c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83726f08-1659-4e9e-8119-31bbecba3f4f"},"level":"info","message":"Attempting to book experiment","requestID":"a488c3db15022a080c760d9f4aebd05c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83726f08-1659-4e9e-8119-31bbecba3f4f"},"level":"info","message":"Successfully booked experiment","requestID":"a488c3db15022a080c760d9f4aebd05c"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6860e980-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"686137a0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":651,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:48Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":651,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.068387,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cde9903e-c243-4a70-a193-2dbb721e8915","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6860e980-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/cde9903e-c243-4a70-a193-2dbb721e8915","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837928,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyOH0.OCUIyimr8bTf9bcWiQGAYOwOH6yvP4b2Q-tWYd14cW4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6860e980-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51158","level":"info","msg":"Received request.","req_id":652,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:48Z"} authorization-1 | {"client_addr":"127.0.0.1:51158","level":"info","msg":"Sent response.","req_id":652,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.278906,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"686137a0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837928,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyOH0.OCUIyimr8bTf9bcWiQGAYOwOH6yvP4b2Q-tWYd14cW4"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"686137a0-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcde9903e-c243-4a70-a193-2dbb721e8915","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcde9903e-c243-4a70-a193-2dbb721e8915","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:46.304223627Z"}]},"request_id":"ebd89918-8981-4fcc-b2f5-5e440f1346c9","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837928.4837384} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"6860e980-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40ffdb3d-e09f-4382-a1ec-f0290421a291","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40ffdb3d-e09f-4382-a1ec-f0290421a291","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:46.357902287Z"}]},"request_id":"9430df0a-7e17-40cd-a65c-91035f2256a1","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837928.488997} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6860e980-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"686137a0-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/cde9903e-c243-4a70-a193-2dbb721e8915? 200 18ms","method":"GET","requestID":"6860e980-49d8-11ef-9fe8-9113c2c8d024","responseTime":18,"status":200,"url":"/devices/cde9903e-c243-4a70-a193-2dbb721e8915?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"686137a0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/40ffdb3d-e09f-4382-a1ec-f0290421a291? 200 19ms","method":"GET","requestID":"686137a0-49d8-11ef-9fe8-9113c2c8d024","responseTime":19,"status":200,"url":"/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83726f08-1659-4e9e-8119-31bbecba3f4f"},"level":"info","message":"Setting up experiment","requestID":"a488c3db15022a080c760d9f4aebd05c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83726f08-1659-4e9e-8119-31bbecba3f4f"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"a488c3db15022a080c760d9f4aebd05c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83726f08-1659-4e9e-8119-31bbecba3f4f"},"level":"info","message":"Successfully locked booking for experiment","requestID":"a488c3db15022a080c760d9f4aebd05c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83726f08-1659-4e9e-8119-31bbecba3f4f"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"a488c3db15022a080c760d9f4aebd05c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83726f08-1659-4e9e-8119-31bbecba3f4f"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"a488c3db15022a080c760d9f4aebd05c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83726f08-1659-4e9e-8119-31bbecba3f4f"},"level":"info","message":"Attempting to update booking for experiment","requestID":"a488c3db15022a080c760d9f4aebd05c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83726f08-1659-4e9e-8119-31bbecba3f4f"},"level":"info","message":"Successfully updated booking for experiment","requestID":"a488c3db15022a080c760d9f4aebd05c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83726f08-1659-4e9e-8119-31bbecba3f4f"},"level":"info","message":"Successfully set up experiment","requestID":"a488c3db15022a080c760d9f4aebd05c"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"686bbef0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"686c0d10-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"686c5b30-49d8-11ef-9fe8-9113c2c8d024"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83726f08-1659-4e9e-8119-31bbecba3f4f"},"level":"info","message":"Successfully running experiment","requestID":"a488c3db15022a080c760d9f4aebd05c"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":653,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:48Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":653,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.968223,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:48Z"} authorization-1 | {"client_addr":"127.0.0.1:51158","level":"info","msg":"Received request.","req_id":654,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cde9903e-c243-4a70-a193-2dbb721e8915","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"686bbef0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/cde9903e-c243-4a70-a193-2dbb721e8915","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837928,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyOH0.OCUIyimr8bTf9bcWiQGAYOwOH6yvP4b2Q-tWYd14cW4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"686bbef0-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51158","level":"info","msg":"Sent response.","req_id":654,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.839425,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"686c0d10-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837928,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyOH0.OCUIyimr8bTf9bcWiQGAYOwOH6yvP4b2Q-tWYd14cW4"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"686c0d10-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":655,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:48Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcde9903e-c243-4a70-a193-2dbb721e8915","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1ce8321e-a2bc-4d93-b0ee-7dd3a6cf2eca","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837928.5548792} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":655,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.739363,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cde9903e-c243-4a70-a193-2dbb721e8915","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"686c5b30-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cde9903e-c243-4a70-a193-2dbb721e8915","object_type":"device","rebac_allow":false,"scope_allow":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":"686c5b30-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcde9903e-c243-4a70-a193-2dbb721e8915","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcde9903e-c243-4a70-a193-2dbb721e8915","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:46.304223627Z"}]},"request_id":"1e73db7d-bbb1-416a-bb70-1e6a0afdbc1a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837928.5577884} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"686bbef0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"686c5b30-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40ffdb3d-e09f-4382-a1ec-f0290421a291","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40ffdb3d-e09f-4382-a1ec-f0290421a291","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:46.357902287Z"}]},"request_id":"98b0e2ca-1f3f-418b-9742-f0e05fe023a7","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837928.5602074} device-1 | {"level":"info","message":"POST /devices/cde9903e-c243-4a70-a193-2dbb721e8915/signaling 200 14ms","method":"POST","requestID":"686c5b30-49d8-11ef-9fe8-9113c2c8d024","responseTime":14,"status":200,"url":"/devices/cde9903e-c243-4a70-a193-2dbb721e8915/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"686c0d10-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"686ef340-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":656,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:48Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"686bbef0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/cde9903e-c243-4a70-a193-2dbb721e8915? 200 25ms","method":"GET","requestID":"686bbef0-49d8-11ef-9fe8-9113c2c8d024","responseTime":25,"status":200,"url":"/devices/cde9903e-c243-4a70-a193-2dbb721e8915?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"686c0d10-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/40ffdb3d-e09f-4382-a1ec-f0290421a291? 200 24ms","method":"GET","requestID":"686c0d10-49d8-11ef-9fe8-9113c2c8d024","responseTime":24,"status":200,"url":"/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291?"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40ffdb3d-e09f-4382-a1ec-f0290421a291","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0b4e3085-68b9-4ec3-8ce3-47e36dff616d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837928.569766} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":656,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.88334,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"686ef340-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291","object_type":"device","rebac_allow":false,"scope_allow":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":"686ef340-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"687004b0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F83726f08-1659-4e9e-8119-31bbecba3f4f#owner@http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F83726f08-1659-4e9e-8119-31bbecba3f4f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"d5293fc7-f2b7-445a-955b-d6db7559180e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837928.5710964} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bf6a901e-cca7-4848-a191-e6820c822b01","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837928.571568} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"a488c3db15022a080c760d9f4aebd05c","responseTime":22,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"686ef340-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":657,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:48Z"} device-1 | {"level":"info","message":"POST /devices/40ffdb3d-e09f-4382-a1ec-f0290421a291/signaling 200 12ms","method":"POST","requestID":"686ef340-49d8-11ef-9fe8-9113c2c8d024","responseTime":12,"status":200,"url":"/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291/signaling"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcde9903e-c243-4a70-a193-2dbb721e8915","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"35a4b7e2-333b-4c14-8ff5-a37b3b994ae8","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837928.5775216} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":657,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.493822,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cde9903e-c243-4a70-a193-2dbb721e8915","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"687004b0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cde9903e-c243-4a70-a193-2dbb721e8915","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"687004b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/83726f08-1659-4e9e-8119-31bbecba3f4f","user":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"a488c3db15022a080c760d9f4aebd05c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"687004b0-49d8-11ef-9fe8-9113c2c8d024"} gateway-1 | {"time_local":"24/Jul/2024:16:18:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1215","request_time":"0.151","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a488c3db15022a080c760d9f4aebd05c"} experiment-1 | {"level":"info","message":"POST /experiments? 201 143ms","method":"POST","requestID":"a488c3db15022a080c760d9f4aebd05c","responseTime":143,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"POST /devices/cde9903e-c243-4a70-a193-2dbb721e8915/signaling 200 11ms","method":"POST","requestID":"687004b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":11,"status":200,"url":"/devices/cde9903e-c243-4a70-a193-2dbb721e8915/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"68720080-49d8-11ef-9fe8-9113c2c8d024"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyOH0.OCUIyimr8bTf9bcWiQGAYOwOH6yvP4b2Q-tWYd14cW4","level":"info","message":"auth send jwt","requestID":"311093d7ecaf75a3c815722d19f99f6e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"311093d7ecaf75a3c815722d19f99f6e"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":658,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:48Z"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"311093d7ecaf75a3c815722d19f99f6e","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40ffdb3d-e09f-4382-a1ec-f0290421a291","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c5b55b2a-78e9-4181-8822-2e38df6d1f0e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837928.5901787} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":658,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.519336,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:48Z"} authorization-1 | {"client_addr":"127.0.0.1:51158","level":"info","msg":"Received request.","req_id":659,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"68720080-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"68720080-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51158","level":"info","msg":"Sent response.","req_id":659,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.798202,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cde9903e-c243-4a70-a193-2dbb721e8915","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"311093d7ecaf75a3c815722d19f99f6e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/cde9903e-c243-4a70-a193-2dbb721e8915","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837928,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyOH0.OCUIyimr8bTf9bcWiQGAYOwOH6yvP4b2Q-tWYd14cW4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"311093d7ecaf75a3c815722d19f99f6e","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"68720080-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/40ffdb3d-e09f-4382-a1ec-f0290421a291/signaling 200 12ms","method":"POST","requestID":"68720080-49d8-11ef-9fe8-9113c2c8d024","responseTime":12,"status":200,"url":"/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83726f08-1659-4e9e-8119-31bbecba3f4f"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"a488c3db15022a080c760d9f4aebd05c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83726f08-1659-4e9e-8119-31bbecba3f4f"},"level":"info","message":"Building connection plan","requestID":"a488c3db15022a080c760d9f4aebd05c"} 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":"c56cf58b-4e6d-485b-9f94-e07a4a458ca9"},{"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":"58ea0793-3612-4629-8686-477ce642f2a9"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"a25eb6d6-fe5c-4ec6-b502-045f13b502da"}]},"level":"info","message":"Built pairwise service configurations","requestID":"a488c3db15022a080c760d9f4aebd05c"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcde9903e-c243-4a70-a193-2dbb721e8915","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcde9903e-c243-4a70-a193-2dbb721e8915","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:46.304223627Z"}]},"request_id":"cb4cdb1e-099f-4e79-ab7e-012ef0149491","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837928.5968263} experiment-1 | {"data":{"connectionPlan":[{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/cde9903e-c243-4a70-a193-2dbb721e8915"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"a488c3db15022a080c760d9f4aebd05c"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"311093d7ecaf75a3c815722d19f99f6e","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"68744a70-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"311093d7ecaf75a3c815722d19f99f6e"} gateway-1 | {"time_local":"24/Jul/2024:16:18:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/cde9903e-c243-4a70-a193-2dbb721e8915? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"311093d7ecaf75a3c815722d19f99f6e"} device-1 | {"level":"info","message":"GET /devices/cde9903e-c243-4a70-a193-2dbb721e8915? 200 13ms","method":"GET","requestID":"311093d7ecaf75a3c815722d19f99f6e","responseTime":13,"status":200,"url":"/devices/cde9903e-c243-4a70-a193-2dbb721e8915?"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":660,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:48Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":660,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.698702,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:48Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"68744a70-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837928,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyOH0.OCUIyimr8bTf9bcWiQGAYOwOH6yvP4b2Q-tWYd14cW4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"68744a70-49d8-11ef-9fe8-9113c2c8d024","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyOH0.OCUIyimr8bTf9bcWiQGAYOwOH6yvP4b2Q-tWYd14cW4","level":"info","message":"auth send jwt","requestID":"bafa0dd0917314706c80348ef89c4e8d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bafa0dd0917314706c80348ef89c4e8d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bafa0dd0917314706c80348ef89c4e8d"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":661,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:48Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":661,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.784537,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"bafa0dd0917314706c80348ef89c4e8d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837928,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkyOH0.OCUIyimr8bTf9bcWiQGAYOwOH6yvP4b2Q-tWYd14cW4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bafa0dd0917314706c80348ef89c4e8d","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","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%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"5e7d2c69-8795-44dd-91c6-2a75994bdc57","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837928.612622} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8ff6c079-0bde-4cbe-a1e9-2e6c1fd4ed28","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837928.6130087} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"68744a70-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40ffdb3d-e09f-4382-a1ec-f0290421a291","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40ffdb3d-e09f-4382-a1ec-f0290421a291","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:46.357902287Z"}]},"request_id":"3fdc39b0-00c5-4d0e-a3dc-6c2efef010e1","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837928.6163466} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bafa0dd0917314706c80348ef89c4e8d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"68744a70-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"68744a70-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/86473210-5e5e-4688-8583-6169d754107f'","requestID":"68744a70-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/86473210-5e5e-4688-8583-6169d754107f'","requestID":"68744a70-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"68744a70-49d8-11ef-9fe8-9113c2c8d024"} 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":"68744a70-49d8-11ef-9fe8-9113c2c8d024","responseTime":32,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bafa0dd0917314706c80348ef89c4e8d"} device-1 | {"level":"info","message":"GET /devices/40ffdb3d-e09f-4382-a1ec-f0290421a291? 200 24ms","method":"GET","requestID":"bafa0dd0917314706c80348ef89c4e8d","responseTime":24,"status":200,"url":"/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291?"} gateway-1 | {"time_local":"24/Jul/2024:16:18:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/40ffdb3d-e09f-4382-a1ec-f0290421a291? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.030","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bafa0dd0917314706c80348ef89c4e8d"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"68744a70-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/86473210-5e5e-4688-8583-6169d754107f","device":"cde9903e-c243-4a70-a193-2dbb721e8915","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83726f08-1659-4e9e-8119-31bbecba3f4f"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"a488c3db15022a080c760d9f4aebd05c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"687d2410-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":662,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:48Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcde9903e-c243-4a70-a193-2dbb721e8915","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fca39840-fdaf-4ae7-b824-17fb3d62ef97","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837928.6616266} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":662,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.189338,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cde9903e-c243-4a70-a193-2dbb721e8915","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"687d2410-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cde9903e-c243-4a70-a193-2dbb721e8915","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"687d2410-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"687d2410-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/cde9903e-c243-4a70-a193-2dbb721e8915/signaling 200 8ms","method":"POST","requestID":"687d2410-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/devices/cde9903e-c243-4a70-a193-2dbb721e8915/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"687ed1c0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":663,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:48Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40ffdb3d-e09f-4382-a1ec-f0290421a291","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"baf54964-46a8-4479-9410-8a36d597975d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837928.6719472} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":663,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.049993,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"687ed1c0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291","object_type":"device","rebac_allow":false,"scope_allow":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":"687ed1c0-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"687ed1c0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/40ffdb3d-e09f-4382-a1ec-f0290421a291/signaling 200 7ms","method":"POST","requestID":"687ed1c0-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291/signaling"} device-1 | {"device":"cde9903e-c243-4a70-a193-2dbb721e8915","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"cde9903e-c243-4a70-a193-2dbb721e8915","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"40ffdb3d-e09f-4382-a1ec-f0290421a291","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"86473210-5e5e-4688-8583-6169d754107f","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 155833265803974560 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:2yRn\r\na=ice-pwd:ouzIncIhyaUse876+fZy/MSW\r\na=ice-options:trickle\r\na=fingerprint:sha-256 E7:92:2C:A4:58:70:BE:A8:42:95:CB:9F:EB:D8:2B:B6:40:DA:49:3F:45:C2:61:BD:7A:1A:9E:CE:51:C4:69:36\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"cde9903e-c243-4a70-a193-2dbb721e8915","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:999128012 1 udp 2113937151 56251cff-099a-4af2-8aa2-ff98e823d401.local 48192 typ host generation 0 ufrag 2yRn network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"cde9903e-c243-4a70-a193-2dbb721e8915","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"cde9903e-c243-4a70-a193-2dbb721e8915","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/86473210-5e5e-4688-8583-6169d754107f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"86473210-5e5e-4688-8583-6169d754107f","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"candidate":"candidate:3214938547 1 udp 1677729535 141.24.211.56 48192 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 2yRn network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"cde9903e-c243-4a70-a193-2dbb721e8915","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"cde9903e-c243-4a70-a193-2dbb721e8915","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"40ffdb3d-e09f-4382-a1ec-f0290421a291","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"40ffdb3d-e09f-4382-a1ec-f0290421a291","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"40ffdb3d-e09f-4382-a1ec-f0290421a291","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.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":"69455daa95d8409cda3351179ed7c708","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"69455daa95d8409cda3351179ed7c708","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/cde9903e-c243-4a70-a193-2dbb721e8915"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/86473210-5e5e-4688-8583-6169d754107f"}}},"level":"info","message":"received a callback","requestID":"69455daa95d8409cda3351179ed7c708"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/cde9903e-c243-4a70-a193-2dbb721e8915'"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"69455daa95d8409cda3351179ed7c708","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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":"69455daa95d8409cda3351179ed7c708"} device-1 | {"data":{"peerconnection":"86473210-5e5e-4688-8583-6169d754107f","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"40ffdb3d-e09f-4382-a1ec-f0290421a291","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"cde9903e-c243-4a70-a193-2dbb721e8915","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"40ffdb3d-e09f-4382-a1ec-f0290421a291","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"86473210-5e5e-4688-8583-6169d754107f","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"cde9903e-c243-4a70-a193-2dbb721e8915","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/86473210-5e5e-4688-8583-6169d754107f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"86473210-5e5e-4688-8583-6169d754107f","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"701be4c047a7a6d00aefdedfd192053d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"701be4c047a7a6d00aefdedfd192053d","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/cde9903e-c243-4a70-a193-2dbb721e8915"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/86473210-5e5e-4688-8583-6169d754107f"}}},"level":"info","message":"received a callback","requestID":"701be4c047a7a6d00aefdedfd192053d"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"69ba37f0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":664,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:50Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F86473210-5e5e-4688-8583-6169d754107f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4d847d16-317e-4ff1-9f70-bb6fb3888588","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837930.740208} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":664,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.525674,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/86473210-5e5e-4688-8583-6169d754107f","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"69ba37f0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/86473210-5e5e-4688-8583-6169d754107f","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":"69ba37f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"69ba37f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /peerconnections/86473210-5e5e-4688-8583-6169d754107f 200 9ms","method":"GET","requestID":"69ba37f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/peerconnections/86473210-5e5e-4688-8583-6169d754107f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 34ms","method":"POST","requestID":"701be4c047a7a6d00aefdedfd192053d","responseTime":34,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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.038","http_referrer":"","http_user_agent":"node-fetch","requestID":"701be4c047a7a6d00aefdedfd192053d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"69bef2e0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":665,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:50Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcde9903e-c243-4a70-a193-2dbb721e8915","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8e8e5b3b-cb35-4ce7-9e94-34beda414f63","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837930.7710555} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":665,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.573722,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cde9903e-c243-4a70-a193-2dbb721e8915","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"69bef2e0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cde9903e-c243-4a70-a193-2dbb721e8915","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"69bef2e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"69bef2e0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/cde9903e-c243-4a70-a193-2dbb721e8915/signaling 200 8ms","method":"POST","requestID":"69bef2e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/devices/cde9903e-c243-4a70-a193-2dbb721e8915/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"69c07980-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":666,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:50Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40ffdb3d-e09f-4382-a1ec-f0290421a291","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c81441be-9ea7-4ff5-ba1d-a86f5813c27b","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837930.7806091} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":666,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.170587,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"69c07980-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291","object_type":"device","rebac_allow":false,"scope_allow":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":"69c07980-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"69c07980-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/40ffdb3d-e09f-4382-a1ec-f0290421a291/signaling 200 8ms","method":"POST","requestID":"69c07980-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzMH0.ySmJ1OKqwARXaXV1AkLs3eklYj1udqztPWTo_Uwtets","level":"info","message":"auth send jwt","requestID":"c1639e6c3ffc2b53c1754ab2bebfa8a5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c1639e6c3ffc2b53c1754ab2bebfa8a5","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/83726f08-1659-4e9e-8119-31bbecba3f4f","requestID":"c1639e6c3ffc2b53c1754ab2bebfa8a5"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":667,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:50Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":667,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.684031,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/83726f08-1659-4e9e-8119-31bbecba3f4f","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"c1639e6c3ffc2b53c1754ab2bebfa8a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/83726f08-1659-4e9e-8119-31bbecba3f4f","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837930,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzMH0.ySmJ1OKqwARXaXV1AkLs3eklYj1udqztPWTo_Uwtets"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c1639e6c3ffc2b53c1754ab2bebfa8a5","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/83726f08-1659-4e9e-8119-31bbecba3f4f","requestID":"c1639e6c3ffc2b53c1754ab2bebfa8a5"} experiment-1 | {"level":"info","message":"GET /experiments/83726f08-1659-4e9e-8119-31bbecba3f4f 200 11ms","method":"GET","requestID":"c1639e6c3ffc2b53c1754ab2bebfa8a5","responseTime":11,"status":200,"url":"/experiments/83726f08-1659-4e9e-8119-31bbecba3f4f"} gateway-1 | {"time_local":"24/Jul/2024:16:18:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/83726f08-1659-4e9e-8119-31bbecba3f4f HTTP/1.1","status": "200","body_bytes_sent":"1288","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c1639e6c3ffc2b53c1754ab2bebfa8a5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzMH0.ySmJ1OKqwARXaXV1AkLs3eklYj1udqztPWTo_Uwtets","level":"info","message":"auth send jwt","requestID":"36b16553215db218b7108a763ea9423e"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"36b16553215db218b7108a763ea9423e","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/83726f08-1659-4e9e-8119-31bbecba3f4f","requestID":"36b16553215db218b7108a763ea9423e"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":668,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:50Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":668,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.046069,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:50Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/83726f08-1659-4e9e-8119-31bbecba3f4f","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"36b16553215db218b7108a763ea9423e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/83726f08-1659-4e9e-8119-31bbecba3f4f","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837930,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzMH0.ySmJ1OKqwARXaXV1AkLs3eklYj1udqztPWTo_Uwtets"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"36b16553215db218b7108a763ea9423e","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83726f08-1659-4e9e-8119-31bbecba3f4f"},"level":"info","message":"Attempting to finish experiment","requestID":"36b16553215db218b7108a763ea9423e"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"69ccd590-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":669,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:50Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":669,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.876782,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:50Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/86473210-5e5e-4688-8583-6169d754107f","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"69ccd590-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:http://localhost/peerconnections/86473210-5e5e-4688-8583-6169d754107f","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837930,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzMH0.ySmJ1OKqwARXaXV1AkLs3eklYj1udqztPWTo_Uwtets"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"69ccd590-49d8-11ef-9fe8-9113c2c8d024","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/86473210-5e5e-4688-8583-6169d754107f","device":"cde9903e-c243-4a70-a193-2dbb721e8915","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"40ffdb3d-e09f-4382-a1ec-f0290421a291","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"40ffdb3d-e09f-4382-a1ec-f0290421a291","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"40ffdb3d-e09f-4382-a1ec-f0290421a291","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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/86473210-5e5e-4688-8583-6169d754107f' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/86473210-5e5e-4688-8583-6169d754107f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"86473210-5e5e-4688-8583-6169d754107f","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F86473210-5e5e-4688-8583-6169d754107f': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F86473210-5e5e-4688-8583-6169d754107f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"3fb3d3a9-3bbc-44f2-b096-7f310f0ee1ad","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837930.8733885} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"803cd88f-9b71-4463-a076-f2acf4be5cfd","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837930.8737636} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"62f259db123010f2171a9f3ae53d1a85","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"62f259db123010f2171a9f3ae53d1a85","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"69ccd590-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0d40d53f5b7976af1a124217f7e9b482","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/cde9903e-c243-4a70-a193-2dbb721e8915"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/86473210-5e5e-4688-8583-6169d754107f"}}},"level":"info","message":"received a callback","requestID":"62f259db123010f2171a9f3ae53d1a85"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0d40d53f5b7976af1a124217f7e9b482","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/cde9903e-c243-4a70-a193-2dbb721e8915"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/86473210-5e5e-4688-8583-6169d754107f"}}},"level":"info","message":"received a callback","requestID":"0d40d53f5b7976af1a124217f7e9b482"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"69ccd590-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"DELETE /peerconnections/86473210-5e5e-4688-8583-6169d754107f 204 36ms","method":"DELETE","requestID":"69ccd590-49d8-11ef-9fe8-9113c2c8d024","responseTime":36,"status":204,"url":"/peerconnections/86473210-5e5e-4688-8583-6169d754107f"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83726f08-1659-4e9e-8119-31bbecba3f4f"},"level":"info","message":"Successfully finished experiment","requestID":"36b16553215db218b7108a763ea9423e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"69d476b0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":670,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:50Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcde9903e-c243-4a70-a193-2dbb721e8915","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e388e89a-8cd7-42cb-bbc3-e020c1f05fe4","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837930.911323} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":670,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.317074,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cde9903e-c243-4a70-a193-2dbb721e8915","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"69d476b0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cde9903e-c243-4a70-a193-2dbb721e8915","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"69d476b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"69d476b0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/cde9903e-c243-4a70-a193-2dbb721e8915/signaling 200 8ms","method":"POST","requestID":"69d476b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/devices/cde9903e-c243-4a70-a193-2dbb721e8915/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"69d5fd50-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":671,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:50Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40ffdb3d-e09f-4382-a1ec-f0290421a291","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ae2b105f-e488-4d98-b532-88402a4ab7af","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837930.9220705} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":671,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.312878,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"69d5fd50-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"69d5fd50-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F83726f08-1659-4e9e-8119-31bbecba3f4f': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F83726f08-1659-4e9e-8119-31bbecba3f4f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"a646e60f-7da7-4e42-a7fc-e3354cca381c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837930.9242363} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a954fe2d-d1a9-42af-86e4-b0b03c8cd783","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837930.9244864} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"36b16553215db218b7108a763ea9423e","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"69d5fd50-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/40ffdb3d-e09f-4382-a1ec-f0290421a291/signaling 200 10ms","method":"POST","requestID":"69d5fd50-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/devices/40ffdb3d-e09f-4382-a1ec-f0290421a291/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/83726f08-1659-4e9e-8119-31bbecba3f4f","requestID":"36b16553215db218b7108a763ea9423e"} gateway-1 | {"time_local":"24/Jul/2024:16:18:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/83726f08-1659-4e9e-8119-31bbecba3f4f HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.134","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"36b16553215db218b7108a763ea9423e"} gateway-1 | {"time_local":"24/Jul/2024:16:18:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2797","request_time":"4.076","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"f773b35a82e1ef8e9091523194e48edd"} experiment-1 | {"level":"info","message":"DELETE /experiments/83726f08-1659-4e9e-8119-31bbecba3f4f 204 133ms","method":"DELETE","requestID":"36b16553215db218b7108a763ea9423e","responseTime":133,"status":204,"url":"/experiments/83726f08-1659-4e9e-8119-31bbecba3f4f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzMH0.ySmJ1OKqwARXaXV1AkLs3eklYj1udqztPWTo_Uwtets","level":"info","message":"auth send jwt","requestID":"c6e4d67db969a286718a065169282cb1"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"c6e4d67db969a286718a065169282cb1","responseTime":6,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Jul/2024:16:18:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2709","request_time":"2.622","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"5d24d245c7b0dbf38911abb6b7ed7b31"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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.118","http_referrer":"","http_user_agent":"node-fetch","requestID":"62f259db123010f2171a9f3ae53d1a85"} gateway-1 | {"time_local":"24/Jul/2024:16:18: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.120","http_referrer":"","http_user_agent":"node-fetch","requestID":"0d40d53f5b7976af1a124217f7e9b482"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 114ms","method":"POST","requestID":"62f259db123010f2171a9f3ae53d1a85","responseTime":114,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 115ms","method":"POST","requestID":"0d40d53f5b7976af1a124217f7e9b482","responseTime":115,"status":200,"url":"/callbacks/experiment"} device-1 | {"level":"info","message":"postDevices called","requestID":"c6e4d67db969a286718a065169282cb1"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":672,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:50Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":672,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.129766,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:50Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"c6e4d67db969a286718a065169282cb1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837930,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzMH0.ySmJ1OKqwARXaXV1AkLs3eklYj1udqztPWTo_Uwtets"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c6e4d67db969a286718a065169282cb1","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/40ffdb3d-e09f-4382-a1ec-f0290421a291' 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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc92fd631-bc7b-4137-8e16-ca9f580aa889","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"b31889a0-0773-4638-b62b-d119dbe73627","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837931.0159426} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c6e4d67db969a286718a065169282cb1","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/cde9903e-c243-4a70-a193-2dbb721e8915' 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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"50730360-7fbc-4c25-9252-da944f7d1a77","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837931.0218635} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"c6e4d67db969a286718a065169282cb1","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc92fd631-bc7b-4137-8e16-ca9f580aa889","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"72e77470-2ce5-4960-8000-8da5983c46fc","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837931.0311408} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d44a2c33-7dc8-407b-9f1f-58201cb546d9","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837931.03143} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"c6e4d67db969a286718a065169282cb1","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc92fd631-bc7b-4137-8e16-ca9f580aa889","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc92fd631-bc7b-4137-8e16-ca9f580aa889","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:51.031117369Z"}]},"request_id":"7520bdfd-93f1-4284-9b1f-38cfd612ff62","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837931.0355697} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"c6e4d67db969a286718a065169282cb1","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"c6e4d67db969a286718a065169282cb1"} gateway-1 | {"time_local":"24/Jul/2024:16:18:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.057","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c6e4d67db969a286718a065169282cb1"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"c6e4d67db969a286718a065169282cb1","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzMX0.vFE6OkCH72zD-DWDcVrOzaVvznOCwltIj1B9heQ0-7Y","level":"info","message":"auth send jwt","requestID":"365c6cf4d9bdf23d1ca8448990957bc1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"365c6cf4d9bdf23d1ca8448990957bc1","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"365c6cf4d9bdf23d1ca8448990957bc1"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":673,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:51Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":673,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.724352,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:51Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"365c6cf4d9bdf23d1ca8448990957bc1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837931,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzMX0.vFE6OkCH72zD-DWDcVrOzaVvznOCwltIj1B9heQ0-7Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"365c6cf4d9bdf23d1ca8448990957bc1","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3e9d5-3df8-40cd-a256-610ef4c31cf9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4368f71e-de5e-4a55-998c-cc60a4560306","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837931.0654824} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"365c6cf4d9bdf23d1ca8448990957bc1","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1d3fa5c5-58f1-49f5-a264-df7486048458","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837931.069997} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"365c6cf4d9bdf23d1ca8448990957bc1","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3e9d5-3df8-40cd-a256-610ef4c31cf9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"070cf00e-cea7-4e91-a620-00c8b87584d8","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837931.081591} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"feaa49ea-9e96-4e53-b996-bb6e7c966c28","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837931.0817022} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"365c6cf4d9bdf23d1ca8448990957bc1","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3e9d5-3df8-40cd-a256-610ef4c31cf9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3e9d5-3df8-40cd-a256-610ef4c31cf9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:51.081565317Z"}]},"request_id":"d1ed4600-583f-4924-87da-385d33146029","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837931.0857358} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"365c6cf4d9bdf23d1ca8448990957bc1","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"365c6cf4d9bdf23d1ca8448990957bc1"} gateway-1 | {"time_local":"24/Jul/2024:16:18:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"365c6cf4d9bdf23d1ca8448990957bc1"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"365c6cf4d9bdf23d1ca8448990957bc1","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzMX0.vFE6OkCH72zD-DWDcVrOzaVvznOCwltIj1B9heQ0-7Y","level":"info","message":"auth send jwt","requestID":"4d1865eab066fa585f5f793868dfa38b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4d1865eab066fa585f5f793868dfa38b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4d1865eab066fa585f5f793868dfa38b"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":674,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:51Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":674,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.950661,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:51Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c92fd631-bc7b-4137-8e16-ca9f580aa889","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"4d1865eab066fa585f5f793868dfa38b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/c92fd631-bc7b-4137-8e16-ca9f580aa889","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837931,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzMX0.vFE6OkCH72zD-DWDcVrOzaVvznOCwltIj1B9heQ0-7Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4d1865eab066fa585f5f793868dfa38b","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc92fd631-bc7b-4137-8e16-ca9f580aa889","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc92fd631-bc7b-4137-8e16-ca9f580aa889","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:51.031117369Z"}]},"request_id":"3b86fea1-a1f7-4167-8e37-ec18312cb8f9","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837931.5780618} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4d1865eab066fa585f5f793868dfa38b","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a9ae1ddb-3e81-4960-9ef2-e2479c138394","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837931.5838532} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"4d1865eab066fa585f5f793868dfa38b","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc92fd631-bc7b-4137-8e16-ca9f580aa889","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc92fd631-bc7b-4137-8e16-ca9f580aa889","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:51.031117369Z"}]},"request_id":"b2098bed-f03a-4a57-8c40-fc401fc2d3e4","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837931.5962896} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4d1865eab066fa585f5f793868dfa38b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4d1865eab066fa585f5f793868dfa38b"} gateway-1 | {"time_local":"24/Jul/2024:16:18:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/c92fd631-bc7b-4137-8e16-ca9f580aa889 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.038","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"4d1865eab066fa585f5f793868dfa38b"} device-1 | {"level":"info","message":"PATCH /devices/c92fd631-bc7b-4137-8e16-ca9f580aa889 200 33ms","method":"PATCH","requestID":"4d1865eab066fa585f5f793868dfa38b","responseTime":33,"status":200,"url":"/devices/c92fd631-bc7b-4137-8e16-ca9f580aa889"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzMX0.vFE6OkCH72zD-DWDcVrOzaVvznOCwltIj1B9heQ0-7Y","level":"info","message":"auth send jwt","requestID":"3ff3984a132037dc4243846659dedcf0"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"3ff3984a132037dc4243846659dedcf0","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"3ff3984a132037dc4243846659dedcf0"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":675,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:51Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":675,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.68364,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:51Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c92fd631-bc7b-4137-8e16-ca9f580aa889","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3ff3984a132037dc4243846659dedcf0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/c92fd631-bc7b-4137-8e16-ca9f580aa889","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837931,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzMX0.vFE6OkCH72zD-DWDcVrOzaVvznOCwltIj1B9heQ0-7Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3ff3984a132037dc4243846659dedcf0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"3ff3984a132037dc4243846659dedcf0"} device-1 | {"level":"info","message":"POST /devices/c92fd631-bc7b-4137-8e16-ca9f580aa889/websocket 200 21ms","method":"POST","requestID":"3ff3984a132037dc4243846659dedcf0","responseTime":21,"status":200,"url":"/devices/c92fd631-bc7b-4137-8e16-ca9f580aa889/websocket"} gateway-1 | {"time_local":"24/Jul/2024:16:18:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c92fd631-bc7b-4137-8e16-ca9f580aa889/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.025","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"3ff3984a132037dc4243846659dedcf0"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c92fd631-bc7b-4137-8e16-ca9f580aa889' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8fc906b0729c6a337b7c5469aa850ea6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8fc906b0729c6a337b7c5469aa850ea6","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Jul/2024:16:18:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9/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":"8fc906b0729c6a337b7c5469aa850ea6"} device-1 | {"level":"info","message":"OPTIONS /devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9/websocket 200 1ms","method":"OPTIONS","requestID":"8fc906b0729c6a337b7c5469aa850ea6","responseTime":1,"status":200,"url":"/devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzM30.7_SrmNsPIImyiHZgOTamXt_zH4q8q7CWSiwKM1Cuk4A","level":"info","message":"auth send jwt","requestID":"6399139a11881a2dbb8ad52ae26c1c50"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"6399139a11881a2dbb8ad52ae26c1c50","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"6399139a11881a2dbb8ad52ae26c1c50"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":676,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:53Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":676,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.283702,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:53Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6399139a11881a2dbb8ad52ae26c1c50","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837933,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzM30.7_SrmNsPIImyiHZgOTamXt_zH4q8q7CWSiwKM1Cuk4A"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6399139a11881a2dbb8ad52ae26c1c50","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"6399139a11881a2dbb8ad52ae26c1c50"} device-1 | {"level":"info","message":"POST /devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9/websocket 200 22ms","method":"POST","requestID":"6399139a11881a2dbb8ad52ae26c1c50","responseTime":22,"status":200,"url":"/devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9/websocket"} gateway-1 | {"time_local":"24/Jul/2024:16:18:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9/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":"6399139a11881a2dbb8ad52ae26c1c50"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzM30.7_SrmNsPIImyiHZgOTamXt_zH4q8q7CWSiwKM1Cuk4A","level":"info","message":"auth send jwt","requestID":"5bc43454b74c95f3fc67b7158b9a5f2c"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"5bc43454b74c95f3fc67b7158b9a5f2c","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5bc43454b74c95f3fc67b7158b9a5f2c"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":677,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:53Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":677,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.201339,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c92fd631-bc7b-4137-8e16-ca9f580aa889","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5bc43454b74c95f3fc67b7158b9a5f2c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/c92fd631-bc7b-4137-8e16-ca9f580aa889","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837933,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzM30.7_SrmNsPIImyiHZgOTamXt_zH4q8q7CWSiwKM1Cuk4A"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5bc43454b74c95f3fc67b7158b9a5f2c","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc92fd631-bc7b-4137-8e16-ca9f580aa889","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc92fd631-bc7b-4137-8e16-ca9f580aa889","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:51.031117369Z"}]},"request_id":"1e78dc6e-1558-4af7-8fa3-d514b2a3f9c2","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837933.1720247} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5bc43454b74c95f3fc67b7158b9a5f2c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5bc43454b74c95f3fc67b7158b9a5f2c"} device-1 | {"level":"info","message":"GET /devices/c92fd631-bc7b-4137-8e16-ca9f580aa889? 200 17ms","method":"GET","requestID":"5bc43454b74c95f3fc67b7158b9a5f2c","responseTime":17,"status":200,"url":"/devices/c92fd631-bc7b-4137-8e16-ca9f580aa889?"} gateway-1 | {"time_local":"24/Jul/2024:16:18:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c92fd631-bc7b-4137-8e16-ca9f580aa889? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5bc43454b74c95f3fc67b7158b9a5f2c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzM30.7_SrmNsPIImyiHZgOTamXt_zH4q8q7CWSiwKM1Cuk4A","level":"info","message":"auth send jwt","requestID":"936bd500734ad19b6673b5108bcd0a22"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"936bd500734ad19b6673b5108bcd0a22","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"936bd500734ad19b6673b5108bcd0a22"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":678,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:53Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":678,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.283384,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"936bd500734ad19b6673b5108bcd0a22","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837933,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzM30.7_SrmNsPIImyiHZgOTamXt_zH4q8q7CWSiwKM1Cuk4A"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"936bd500734ad19b6673b5108bcd0a22","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3e9d5-3df8-40cd-a256-610ef4c31cf9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3e9d5-3df8-40cd-a256-610ef4c31cf9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:51.081565317Z"}]},"request_id":"3ce0c581-0366-4506-bccc-070505ad5170","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837933.1976893} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"936bd500734ad19b6673b5108bcd0a22","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"936bd500734ad19b6673b5108bcd0a22"} gateway-1 | {"time_local":"24/Jul/2024:16:18:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"936bd500734ad19b6673b5108bcd0a22"} device-1 | {"level":"info","message":"GET /devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9? 200 17ms","method":"GET","requestID":"936bd500734ad19b6673b5108bcd0a22","responseTime":17,"status":200,"url":"/devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzM30.7_SrmNsPIImyiHZgOTamXt_zH4q8q7CWSiwKM1Cuk4A","level":"info","message":"auth send jwt","requestID":"5dd223699b262c629d04426461e94f98"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5dd223699b262c629d04426461e94f98","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"5dd223699b262c629d04426461e94f98"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":679,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:53Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":679,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.380758,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:53Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"5dd223699b262c629d04426461e94f98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837933,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzM30.7_SrmNsPIImyiHZgOTamXt_zH4q8q7CWSiwKM1Cuk4A"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5dd223699b262c629d04426461e94f98","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f8ece05-ec6a-44f8-a16c-855aab2a154f"},"level":"info","message":"Attempting to run experiment","requestID":"5dd223699b262c629d04426461e94f98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f8ece05-ec6a-44f8-a16c-855aab2a154f"},"level":"info","message":"Attempting to book experiment","requestID":"5dd223699b262c629d04426461e94f98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f8ece05-ec6a-44f8-a16c-855aab2a154f"},"level":"info","message":"Successfully booked experiment","requestID":"5dd223699b262c629d04426461e94f98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6b3ae480-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6b3b0b90-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":680,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:53Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":680,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.136037,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c92fd631-bc7b-4137-8e16-ca9f580aa889","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6b3ae480-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/c92fd631-bc7b-4137-8e16-ca9f580aa889","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837933,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzM30.7_SrmNsPIImyiHZgOTamXt_zH4q8q7CWSiwKM1Cuk4A"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6b3ae480-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51158","level":"info","msg":"Received request.","req_id":681,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:53Z"} authorization-1 | {"client_addr":"127.0.0.1:51158","level":"info","msg":"Sent response.","req_id":681,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.621318,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6b3b0b90-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837933,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzM30.7_SrmNsPIImyiHZgOTamXt_zH4q8q7CWSiwKM1Cuk4A"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6b3b0b90-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc92fd631-bc7b-4137-8e16-ca9f580aa889","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc92fd631-bc7b-4137-8e16-ca9f580aa889","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:51.031117369Z"}]},"request_id":"a4d7e5f4-b534-42f4-9ad7-a890402a3762","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837933.2668765} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"6b3ae480-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3e9d5-3df8-40cd-a256-610ef4c31cf9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3e9d5-3df8-40cd-a256-610ef4c31cf9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:51.081565317Z"}]},"request_id":"a449ad2a-a80f-40bd-89be-3b4fd4d1045c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837933.268535} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6b3b0b90-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6b3ae480-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/c92fd631-bc7b-4137-8e16-ca9f580aa889? 200 19ms","method":"GET","requestID":"6b3ae480-49d8-11ef-9fe8-9113c2c8d024","responseTime":19,"status":200,"url":"/devices/c92fd631-bc7b-4137-8e16-ca9f580aa889?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6b3b0b90-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9? 200 19ms","method":"GET","requestID":"6b3b0b90-49d8-11ef-9fe8-9113c2c8d024","responseTime":19,"status":200,"url":"/devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f8ece05-ec6a-44f8-a16c-855aab2a154f"},"level":"info","message":"Setting up experiment","requestID":"5dd223699b262c629d04426461e94f98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f8ece05-ec6a-44f8-a16c-855aab2a154f"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"5dd223699b262c629d04426461e94f98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f8ece05-ec6a-44f8-a16c-855aab2a154f"},"level":"info","message":"Successfully locked booking for experiment","requestID":"5dd223699b262c629d04426461e94f98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f8ece05-ec6a-44f8-a16c-855aab2a154f"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"5dd223699b262c629d04426461e94f98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f8ece05-ec6a-44f8-a16c-855aab2a154f"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"5dd223699b262c629d04426461e94f98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f8ece05-ec6a-44f8-a16c-855aab2a154f"},"level":"info","message":"Attempting to update booking for experiment","requestID":"5dd223699b262c629d04426461e94f98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f8ece05-ec6a-44f8-a16c-855aab2a154f"},"level":"info","message":"Successfully updated booking for experiment","requestID":"5dd223699b262c629d04426461e94f98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f8ece05-ec6a-44f8-a16c-855aab2a154f"},"level":"info","message":"Successfully set up experiment","requestID":"5dd223699b262c629d04426461e94f98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6b45b9f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6b460810-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":682,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:53Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6b467d40-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":682,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.426326,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c92fd631-bc7b-4137-8e16-ca9f580aa889","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6b45b9f0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/c92fd631-bc7b-4137-8e16-ca9f580aa889","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837933,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzM30.7_SrmNsPIImyiHZgOTamXt_zH4q8q7CWSiwKM1Cuk4A"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f8ece05-ec6a-44f8-a16c-855aab2a154f"},"level":"info","message":"Successfully running experiment","requestID":"5dd223699b262c629d04426461e94f98"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6b45b9f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51158","level":"info","msg":"Received request.","req_id":683,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:53Z"} authorization-1 | {"client_addr":"127.0.0.1:51158","level":"info","msg":"Sent response.","req_id":683,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.131358,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6b460810-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837933,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzM30.7_SrmNsPIImyiHZgOTamXt_zH4q8q7CWSiwKM1Cuk4A"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"6b460810-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":684,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:53Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc92fd631-bc7b-4137-8e16-ca9f580aa889","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a5454c7c-8ed5-4246-a1ce-b198dcd6a62c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837933.3418853} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3e9d5-3df8-40cd-a256-610ef4c31cf9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3e9d5-3df8-40cd-a256-610ef4c31cf9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:51.081565317Z"}]},"request_id":"5f4bbe5d-5737-4222-ae79-ca762be2cdf9","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837933.345927} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":684,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.07926,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c92fd631-bc7b-4137-8e16-ca9f580aa889","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6b467d40-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c92fd631-bc7b-4137-8e16-ca9f580aa889","object_type":"device","rebac_allow":false,"scope_allow":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":"6b467d40-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"6b460810-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc92fd631-bc7b-4137-8e16-ca9f580aa889","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc92fd631-bc7b-4137-8e16-ca9f580aa889","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:51.031117369Z"}]},"request_id":"8da4b396-be01-42eb-a4c7-e0955899677b","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837933.347965} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"6b45b9f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6b467d40-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/c92fd631-bc7b-4137-8e16-ca9f580aa889/signaling 200 25ms","method":"POST","requestID":"6b467d40-49d8-11ef-9fe8-9113c2c8d024","responseTime":25,"status":200,"url":"/devices/c92fd631-bc7b-4137-8e16-ca9f580aa889/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6b460810-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9? 200 30ms","method":"GET","requestID":"6b460810-49d8-11ef-9fe8-9113c2c8d024","responseTime":30,"status":200,"url":"/devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6b45b9f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/c92fd631-bc7b-4137-8e16-ca9f580aa889? 200 34ms","method":"GET","requestID":"6b45b9f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":34,"status":200,"url":"/devices/c92fd631-bc7b-4137-8e16-ca9f580aa889?"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7f8ece05-ec6a-44f8-a16c-855aab2a154f#owner@http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7f8ece05-ec6a-44f8-a16c-855aab2a154f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"1c5d8d04-d61b-4d24-9224-dd85b368acd5","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837933.3628154} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6b4b1120-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d6c7fae9-3e31-4e72-9277-4d665906b344","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837933.363199} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"5dd223699b262c629d04426461e94f98","responseTime":25,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6b4bad60-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":685,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:53Z"} authorization-1 | {"client_addr":"127.0.0.1:51158","level":"info","msg":"Received request.","req_id":686,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:53Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3e9d5-3df8-40cd-a256-610ef4c31cf9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"63cf1692-d9b7-4823-876b-51dd5a4c6653","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837933.3713872} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":685,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.670877,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6b4b1120-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9","object_type":"device","rebac_allow":false,"scope_allow":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":"6b4b1120-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc92fd631-bc7b-4137-8e16-ca9f580aa889","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"01c1567a-54ca-4a9c-97ed-632f6a001641","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837933.373521} authorization-1 | {"client_addr":"127.0.0.1:51158","level":"info","msg":"Sent response.","req_id":686,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.597886,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:53Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/7f8ece05-ec6a-44f8-a16c-855aab2a154f","user":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"5dd223699b262c629d04426461e94f98"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c92fd631-bc7b-4137-8e16-ca9f580aa889","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6b4bad60-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c92fd631-bc7b-4137-8e16-ca9f580aa889","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":"24/Jul/2024:16:18:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1215","request_time":"0.170","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5dd223699b262c629d04426461e94f98"} experiment-1 | {"level":"info","message":"POST /experiments? 201 164ms","method":"POST","requestID":"5dd223699b262c629d04426461e94f98","responseTime":164,"status":201,"url":"/experiments?"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"6b4bad60-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6b4b1120-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9/signaling 200 16ms","method":"POST","requestID":"6b4b1120-49d8-11ef-9fe8-9113c2c8d024","responseTime":16,"status":200,"url":"/devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6b4bad60-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/c92fd631-bc7b-4137-8e16-ca9f580aa889/signaling 200 14ms","method":"POST","requestID":"6b4bad60-49d8-11ef-9fe8-9113c2c8d024","responseTime":14,"status":200,"url":"/devices/c92fd631-bc7b-4137-8e16-ca9f580aa889/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzM30.7_SrmNsPIImyiHZgOTamXt_zH4q8q7CWSiwKM1Cuk4A","level":"info","message":"auth send jwt","requestID":"987830c9dfb7439fbf914e48cca42a44"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"987830c9dfb7439fbf914e48cca42a44","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6b4e1e60-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"987830c9dfb7439fbf914e48cca42a44"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":687,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:53Z"} authorization-1 | {"client_addr":"127.0.0.1:51158","level":"info","msg":"Received request.","req_id":688,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:53Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3e9d5-3df8-40cd-a256-610ef4c31cf9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f82c6abd-7f46-46b5-bce3-52a229c9550a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837933.3873403} authorization-1 | {"client_addr":"127.0.0.1:51158","level":"info","msg":"Sent response.","req_id":688,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.401266,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c92fd631-bc7b-4137-8e16-ca9f580aa889","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"987830c9dfb7439fbf914e48cca42a44","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/c92fd631-bc7b-4137-8e16-ca9f580aa889","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837933,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzM30.7_SrmNsPIImyiHZgOTamXt_zH4q8q7CWSiwKM1Cuk4A"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"987830c9dfb7439fbf914e48cca42a44","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":687,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.310801,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6b4e1e60-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6b4e1e60-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc92fd631-bc7b-4137-8e16-ca9f580aa889","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc92fd631-bc7b-4137-8e16-ca9f580aa889","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:51.031117369Z"}]},"request_id":"1dd461ca-3ad6-4674-8869-4857d75042d3","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837933.393021} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6b4e1e60-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9/signaling 200 11ms","method":"POST","requestID":"6b4e1e60-49d8-11ef-9fe8-9113c2c8d024","responseTime":11,"status":200,"url":"/devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"987830c9dfb7439fbf914e48cca42a44","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f8ece05-ec6a-44f8-a16c-855aab2a154f"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"5dd223699b262c629d04426461e94f98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f8ece05-ec6a-44f8-a16c-855aab2a154f"},"level":"info","message":"Building connection plan","requestID":"5dd223699b262c629d04426461e94f98"} 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":"83cdfe7a-5748-4bfb-86f0-39a3e0abab4b"},{"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":"4a9be5a0-80de-45fe-a946-bb46216ed8f2"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"c300c9ea-8370-4d47-b16f-09a3a0105d4d"}]},"level":"info","message":"Built pairwise service configurations","requestID":"5dd223699b262c629d04426461e94f98"} experiment-1 | {"data":{"connectionPlan":[{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/c92fd631-bc7b-4137-8e16-ca9f580aa889"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"5dd223699b262c629d04426461e94f98"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"6b504140-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"987830c9dfb7439fbf914e48cca42a44"} device-1 | {"level":"info","message":"GET /devices/c92fd631-bc7b-4137-8e16-ca9f580aa889? 200 13ms","method":"GET","requestID":"987830c9dfb7439fbf914e48cca42a44","responseTime":13,"status":200,"url":"/devices/c92fd631-bc7b-4137-8e16-ca9f580aa889?"} gateway-1 | {"time_local":"24/Jul/2024:16:18:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c92fd631-bc7b-4137-8e16-ca9f580aa889? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"987830c9dfb7439fbf914e48cca42a44"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":689,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:53Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":689,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.694974,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:53Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6b504140-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837933,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzM30.7_SrmNsPIImyiHZgOTamXt_zH4q8q7CWSiwKM1Cuk4A"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6b504140-49d8-11ef-9fe8-9113c2c8d024","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzM30.7_SrmNsPIImyiHZgOTamXt_zH4q8q7CWSiwKM1Cuk4A","level":"info","message":"auth send jwt","requestID":"c02750876aaf7244053a61bc5f90c48d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c02750876aaf7244053a61bc5f90c48d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c02750876aaf7244053a61bc5f90c48d"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":690,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:53Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":690,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.715097,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"c02750876aaf7244053a61bc5f90c48d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837933,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzM30.7_SrmNsPIImyiHZgOTamXt_zH4q8q7CWSiwKM1Cuk4A"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c02750876aaf7244053a61bc5f90c48d","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","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%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"1fbb61e4-ca33-4133-9229-5e3dcf16fa8a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837933.4094238} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a94b3eb2-667e-44e8-861b-8b50f2289b0b","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837933.4095752} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"6b504140-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3e9d5-3df8-40cd-a256-610ef4c31cf9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3e9d5-3df8-40cd-a256-610ef4c31cf9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:51.081565317Z"}]},"request_id":"35720f1c-8f5e-4ab2-b9b5-e4d42148b06b","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837933.4142153} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"c02750876aaf7244053a61bc5f90c48d","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"6b504140-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"6b504140-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/7a0919a3-4ab5-48e8-ba9d-0d47f2aafe2f'","requestID":"6b504140-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/7a0919a3-4ab5-48e8-ba9d-0d47f2aafe2f'","requestID":"6b504140-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"6b504140-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 30ms","method":"POST","requestID":"6b504140-49d8-11ef-9fe8-9113c2c8d024","responseTime":30,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c02750876aaf7244053a61bc5f90c48d"} gateway-1 | {"time_local":"24/Jul/2024:16:18:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.031","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c02750876aaf7244053a61bc5f90c48d"} device-1 | {"level":"info","message":"GET /devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9? 200 25ms","method":"GET","requestID":"c02750876aaf7244053a61bc5f90c48d","responseTime":25,"status":200,"url":"/devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"6b504140-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/7a0919a3-4ab5-48e8-ba9d-0d47f2aafe2f","device":"ace3e9d5-3df8-40cd-a256-610ef4c31cf9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} device-1 | {"device":"ace3e9d5-3df8-40cd-a256-610ef4c31cf9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"ace3e9d5-3df8-40cd-a256-610ef4c31cf9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f8ece05-ec6a-44f8-a16c-855aab2a154f"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"5dd223699b262c629d04426461e94f98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6b5aa180-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"content":{"sdp":"v=0\r\no=- 9020800369511939790 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:vLaU\r\na=ice-pwd:5u2F8EGVXbPLSH9bpiZhj7/l\r\na=ice-options:trickle\r\na=fingerprint:sha-256 24:EB:F1:76:68:8D:B6:E9:45:2F:78:49:93:AE:96:B6:AA:C2:D1:3D:D4:60:B8:F7:AC:F2:EB:C6:0B:B0:86:4D\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"ace3e9d5-3df8-40cd-a256-610ef4c31cf9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9'"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":691,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:53Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc92fd631-bc7b-4137-8e16-ca9f580aa889","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2d181f9d-23c0-464d-ba7c-a7770feba017","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837933.4694095} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":691,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.52678,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c92fd631-bc7b-4137-8e16-ca9f580aa889","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6b5aa180-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c92fd631-bc7b-4137-8e16-ca9f580aa889","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6b5aa180-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6b5aa180-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/c92fd631-bc7b-4137-8e16-ca9f580aa889/signaling 200 9ms","method":"POST","requestID":"6b5aa180-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/devices/c92fd631-bc7b-4137-8e16-ca9f580aa889/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6b5c4f30-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":692,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:53Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3e9d5-3df8-40cd-a256-610ef4c31cf9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9cea20aa-3782-44f7-9852-c6d0f4861653","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837933.4791245} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":692,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.12048,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6b5c4f30-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9","object_type":"device","rebac_allow":false,"scope_allow":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":"6b5c4f30-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6b5c4f30-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9/signaling 200 7ms","method":"POST","requestID":"6b5c4f30-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9/signaling"} device-1 | {"device":"ace3e9d5-3df8-40cd-a256-610ef4c31cf9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"c92fd631-bc7b-4137-8e16-ca9f580aa889","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"7a0919a3-4ab5-48e8-ba9d-0d47f2aafe2f","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"c92fd631-bc7b-4137-8e16-ca9f580aa889","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c92fd631-bc7b-4137-8e16-ca9f580aa889","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c92fd631-bc7b-4137-8e16-ca9f580aa889","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c92fd631-bc7b-4137-8e16-ca9f580aa889","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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/7a0919a3-4ab5-48e8-ba9d-0d47f2aafe2f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"7a0919a3-4ab5-48e8-ba9d-0d47f2aafe2f","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0de619d3ee91a5af48060390825c2fec","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"0de619d3ee91a5af48060390825c2fec","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/c92fd631-bc7b-4137-8e16-ca9f580aa889"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/7a0919a3-4ab5-48e8-ba9d-0d47f2aafe2f"}}},"level":"info","message":"received a callback","requestID":"0de619d3ee91a5af48060390825c2fec"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"0de619d3ee91a5af48060390825c2fec","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"0de619d3ee91a5af48060390825c2fec"} device-1 | {"content":{"candidate":"candidate:957740777 1 udp 2113937151 7b79321f-1de2-43a6-8d8c-c8a5feb3c165.local 36490 typ host generation 0 ufrag vLaU network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"ace3e9d5-3df8-40cd-a256-610ef4c31cf9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3174603926 1 udp 1677729535 141.24.211.56 36490 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag vLaU network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"ace3e9d5-3df8-40cd-a256-610ef4c31cf9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3996459805 1 udp 33562623 141.24.210.113 50756 typ relay raddr 141.24.211.56 rport 36490 generation 0 ufrag vLaU network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"ace3e9d5-3df8-40cd-a256-610ef4c31cf9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"ace3e9d5-3df8-40cd-a256-610ef4c31cf9","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/ace3e9d5-3df8-40cd-a256-610ef4c31cf9'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9'"} device-1 | {"data":{"peerconnection":"7a0919a3-4ab5-48e8-ba9d-0d47f2aafe2f","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"c92fd631-bc7b-4137-8e16-ca9f580aa889","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"ace3e9d5-3df8-40cd-a256-610ef4c31cf9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"data":{"peerconnection":"7a0919a3-4ab5-48e8-ba9d-0d47f2aafe2f","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"c92fd631-bc7b-4137-8e16-ca9f580aa889","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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/7a0919a3-4ab5-48e8-ba9d-0d47f2aafe2f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"7a0919a3-4ab5-48e8-ba9d-0d47f2aafe2f","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"01bae2a3e71761631256081bf17827d4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"01bae2a3e71761631256081bf17827d4","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c92fd631-bc7b-4137-8e16-ca9f580aa889"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/7a0919a3-4ab5-48e8-ba9d-0d47f2aafe2f"}}},"level":"info","message":"received a callback","requestID":"01bae2a3e71761631256081bf17827d4"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"6c96f210-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":693,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:55Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F7a0919a3-4ab5-48e8-ba9d-0d47f2aafe2f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"36ae8966-b701-4bf4-8e36-f6b7009a36a8","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837935.5431974} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":693,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.198133,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/7a0919a3-4ab5-48e8-ba9d-0d47f2aafe2f","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6c96f210-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/7a0919a3-4ab5-48e8-ba9d-0d47f2aafe2f","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":"6c96f210-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"6c96f210-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /peerconnections/7a0919a3-4ab5-48e8-ba9d-0d47f2aafe2f 200 10ms","method":"GET","requestID":"6c96f210-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/peerconnections/7a0919a3-4ab5-48e8-ba9d-0d47f2aafe2f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 36ms","method":"POST","requestID":"01bae2a3e71761631256081bf17827d4","responseTime":36,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.040","http_referrer":"","http_user_agent":"node-fetch","requestID":"01bae2a3e71761631256081bf17827d4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6c9bad00-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":694,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:55Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc92fd631-bc7b-4137-8e16-ca9f580aa889","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0dea3576-208b-49e8-b304-caca69811463","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837935.573449} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":694,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.964047,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c92fd631-bc7b-4137-8e16-ca9f580aa889","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6c9bad00-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c92fd631-bc7b-4137-8e16-ca9f580aa889","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6c9bad00-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6c9bad00-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/c92fd631-bc7b-4137-8e16-ca9f580aa889/signaling 200 10ms","method":"POST","requestID":"6c9bad00-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/devices/c92fd631-bc7b-4137-8e16-ca9f580aa889/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6c9da8d0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":695,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:55Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3e9d5-3df8-40cd-a256-610ef4c31cf9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6036cbd9-3e9f-4952-b082-b853999db003","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837935.587287} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":695,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.591393,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6c9da8d0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9","object_type":"device","rebac_allow":false,"scope_allow":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":"6c9da8d0-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6c9da8d0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9/signaling 200 11ms","method":"POST","requestID":"6c9da8d0-49d8-11ef-9fe8-9113c2c8d024","responseTime":11,"status":200,"url":"/devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzNX0.pUyTZpWDF30xutPpNf7JbU_lvRy6nsCtQoryV9BJCXk","level":"info","message":"auth send jwt","requestID":"0f27f7e0d0a726ee54dbe425ddab2d33"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0f27f7e0d0a726ee54dbe425ddab2d33","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/7f8ece05-ec6a-44f8-a16c-855aab2a154f","requestID":"0f27f7e0d0a726ee54dbe425ddab2d33"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":696,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:55Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":696,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.184455,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/7f8ece05-ec6a-44f8-a16c-855aab2a154f","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"0f27f7e0d0a726ee54dbe425ddab2d33","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/7f8ece05-ec6a-44f8-a16c-855aab2a154f","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837935,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzNX0.pUyTZpWDF30xutPpNf7JbU_lvRy6nsCtQoryV9BJCXk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0f27f7e0d0a726ee54dbe425ddab2d33","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/7f8ece05-ec6a-44f8-a16c-855aab2a154f","requestID":"0f27f7e0d0a726ee54dbe425ddab2d33"} gateway-1 | {"time_local":"24/Jul/2024:16:18:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/7f8ece05-ec6a-44f8-a16c-855aab2a154f HTTP/1.1","status": "200","body_bytes_sent":"1288","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0f27f7e0d0a726ee54dbe425ddab2d33"} experiment-1 | {"level":"info","message":"GET /experiments/7f8ece05-ec6a-44f8-a16c-855aab2a154f 200 15ms","method":"GET","requestID":"0f27f7e0d0a726ee54dbe425ddab2d33","responseTime":15,"status":200,"url":"/experiments/7f8ece05-ec6a-44f8-a16c-855aab2a154f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzNX0.pUyTZpWDF30xutPpNf7JbU_lvRy6nsCtQoryV9BJCXk","level":"info","message":"auth send jwt","requestID":"351bbaab05ff1bcee2b572f8179c4987"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"351bbaab05ff1bcee2b572f8179c4987","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/7f8ece05-ec6a-44f8-a16c-855aab2a154f","requestID":"351bbaab05ff1bcee2b572f8179c4987"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":697,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:55Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":697,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.241463,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:55Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/7f8ece05-ec6a-44f8-a16c-855aab2a154f","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"351bbaab05ff1bcee2b572f8179c4987","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/7f8ece05-ec6a-44f8-a16c-855aab2a154f","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837935,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzNX0.pUyTZpWDF30xutPpNf7JbU_lvRy6nsCtQoryV9BJCXk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"351bbaab05ff1bcee2b572f8179c4987","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f8ece05-ec6a-44f8-a16c-855aab2a154f"},"level":"info","message":"Attempting to finish experiment","requestID":"351bbaab05ff1bcee2b572f8179c4987"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"6cab3d60-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":698,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:55Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":698,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.279693,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:55Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/7a0919a3-4ab5-48e8-ba9d-0d47f2aafe2f","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6cab3d60-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:http://localhost/peerconnections/7a0919a3-4ab5-48e8-ba9d-0d47f2aafe2f","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837935,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzNX0.pUyTZpWDF30xutPpNf7JbU_lvRy6nsCtQoryV9BJCXk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6cab3d60-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/7a0919a3-4ab5-48e8-ba9d-0d47f2aafe2f","device":"ace3e9d5-3df8-40cd-a256-610ef4c31cf9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"c92fd631-bc7b-4137-8e16-ca9f580aa889","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c92fd631-bc7b-4137-8e16-ca9f580aa889","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c92fd631-bc7b-4137-8e16-ca9f580aa889","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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/7a0919a3-4ab5-48e8-ba9d-0d47f2aafe2f' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/7a0919a3-4ab5-48e8-ba9d-0d47f2aafe2f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"7a0919a3-4ab5-48e8-ba9d-0d47f2aafe2f","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F7a0919a3-4ab5-48e8-ba9d-0d47f2aafe2f': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F7a0919a3-4ab5-48e8-ba9d-0d47f2aafe2f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"f563702a-ced0-48e1-bea0-970e82445bbb","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837935.6954362} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e63579b5808cad67007da6c6887a60ac","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bdfa5f14-bd32-4aa0-ad0d-c1b68f074979","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837935.6960452} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"e63579b5808cad67007da6c6887a60ac","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"6cab3d60-49d8-11ef-9fe8-9113c2c8d024","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/c92fd631-bc7b-4137-8e16-ca9f580aa889"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/7a0919a3-4ab5-48e8-ba9d-0d47f2aafe2f"}}},"level":"info","message":"received a callback","requestID":"e63579b5808cad67007da6c6887a60ac"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"59d9071e55320680140be69b0022e589","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"59d9071e55320680140be69b0022e589","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/c92fd631-bc7b-4137-8e16-ca9f580aa889"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/7a0919a3-4ab5-48e8-ba9d-0d47f2aafe2f"}}},"level":"info","message":"received a callback","requestID":"59d9071e55320680140be69b0022e589"} device-1 | {"data":{"peerconnection":"7a0919a3-4ab5-48e8-ba9d-0d47f2aafe2f","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"6cab3d60-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"DELETE /peerconnections/7a0919a3-4ab5-48e8-ba9d-0d47f2aafe2f 204 52ms","method":"DELETE","requestID":"6cab3d60-49d8-11ef-9fe8-9113c2c8d024","responseTime":52,"status":204,"url":"/peerconnections/7a0919a3-4ab5-48e8-ba9d-0d47f2aafe2f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f8ece05-ec6a-44f8-a16c-855aab2a154f"},"level":"info","message":"Successfully finished experiment","requestID":"351bbaab05ff1bcee2b572f8179c4987"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6cb77260-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":699,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:55Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc92fd631-bc7b-4137-8e16-ca9f580aa889","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"751c71a6-f6d1-4e48-938a-7fe7efbeae03","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837935.7584105} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":699,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.655029,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c92fd631-bc7b-4137-8e16-ca9f580aa889","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6cb77260-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c92fd631-bc7b-4137-8e16-ca9f580aa889","object_type":"device","rebac_allow":false,"scope_allow":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":"6cb77260-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7f8ece05-ec6a-44f8-a16c-855aab2a154f': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7f8ece05-ec6a-44f8-a16c-855aab2a154f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"866d7bf6-deeb-4086-9226-78ff6e70b470","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837935.7641418} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6cb77260-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/c92fd631-bc7b-4137-8e16-ca9f580aa889/signaling 200 15ms","method":"POST","requestID":"6cb77260-49d8-11ef-9fe8-9113c2c8d024","responseTime":15,"status":200,"url":"/devices/c92fd631-bc7b-4137-8e16-ca9f580aa889/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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2fb980b3-cc6c-4189-8515-76196a97b26e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837935.764645} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"351bbaab05ff1bcee2b572f8179c4987","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6cba5890-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":700,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:55Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3e9d5-3df8-40cd-a256-610ef4c31cf9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"79106303-fd96-4c57-a054-633e78095d61","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837935.776231} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":700,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.90387,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6cba5890-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9","object_type":"device","rebac_allow":false,"scope_allow":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":"6cba5890-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6cba5890-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9/signaling 200 14ms","method":"POST","requestID":"6cba5890-49d8-11ef-9fe8-9113c2c8d024","responseTime":14,"status":200,"url":"/devices/ace3e9d5-3df8-40cd-a256-610ef4c31cf9/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/7f8ece05-ec6a-44f8-a16c-855aab2a154f","requestID":"351bbaab05ff1bcee2b572f8179c4987"} gateway-1 | {"time_local":"24/Jul/2024:16:18:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/7f8ece05-ec6a-44f8-a16c-855aab2a154f HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.196","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"351bbaab05ff1bcee2b572f8179c4987"} experiment-1 | {"level":"info","message":"DELETE /experiments/7f8ece05-ec6a-44f8-a16c-855aab2a154f 204 191ms","method":"DELETE","requestID":"351bbaab05ff1bcee2b572f8179c4987","responseTime":191,"status":204,"url":"/experiments/7f8ece05-ec6a-44f8-a16c-855aab2a154f"} gateway-1 | {"time_local":"24/Jul/2024:16:18:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3193","request_time":"4.217","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"ff4d7315ef986ceb7cbb30c7ebf03749"} gateway-1 | {"time_local":"24/Jul/2024:16:18:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.152","http_referrer":"","http_user_agent":"node-fetch","requestID":"e63579b5808cad67007da6c6887a60ac"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 147ms","method":"POST","requestID":"e63579b5808cad67007da6c6887a60ac","responseTime":147,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 145ms","method":"POST","requestID":"59d9071e55320680140be69b0022e589","responseTime":145,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:18:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.153","http_referrer":"","http_user_agent":"node-fetch","requestID":"59d9071e55320680140be69b0022e589"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzNX0.pUyTZpWDF30xutPpNf7JbU_lvRy6nsCtQoryV9BJCXk","level":"info","message":"auth send jwt","requestID":"f5e8fceaa7f4951e5a2219a749d7bf38"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f5e8fceaa7f4951e5a2219a749d7bf38","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"f5e8fceaa7f4951e5a2219a749d7bf38"} gateway-1 | {"time_local":"24/Jul/2024:16:18:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2702","request_time":"2.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":"74ca45b8af08d51dad6b1592915ddc7c"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":701,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:55Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":701,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.91468,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:55Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"f5e8fceaa7f4951e5a2219a749d7bf38","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837935,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzNX0.pUyTZpWDF30xutPpNf7JbU_lvRy6nsCtQoryV9BJCXk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f5e8fceaa7f4951e5a2219a749d7bf38","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/c92fd631-bc7b-4137-8e16-ca9f580aa889' 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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4af0dd7b-f04e-4418-a033-026bf4526094","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"5483f3ae-f92b-4073-9b76-39ca4be1f5cb","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837935.8737729} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f5e8fceaa7f4951e5a2219a749d7bf38","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/ace3e9d5-3df8-40cd-a256-610ef4c31cf9' 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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e69b9013-74f1-43a5-ba5f-b817bc2cdb3c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837935.8794} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f5e8fceaa7f4951e5a2219a749d7bf38","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4af0dd7b-f04e-4418-a033-026bf4526094","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"ef478ac0-e82a-45d8-85af-8a77daa8f780","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837935.8955452} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"17327a43-3ff1-4a24-ad61-623aae8bf957","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837935.8957386} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"f5e8fceaa7f4951e5a2219a749d7bf38","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4af0dd7b-f04e-4418-a033-026bf4526094","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4af0dd7b-f04e-4418-a033-026bf4526094","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:55.895511212Z"}]},"request_id":"8bd84fc8-6f22-4122-a5da-888b47240f61","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837935.9003375} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f5e8fceaa7f4951e5a2219a749d7bf38","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f5e8fceaa7f4951e5a2219a749d7bf38"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"f5e8fceaa7f4951e5a2219a749d7bf38","responseTime":50,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Jul/2024:16:18:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.057","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f5e8fceaa7f4951e5a2219a749d7bf38"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzNX0.pUyTZpWDF30xutPpNf7JbU_lvRy6nsCtQoryV9BJCXk","level":"info","message":"auth send jwt","requestID":"469def4773226a00bf20204b7e20d195"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"469def4773226a00bf20204b7e20d195","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"469def4773226a00bf20204b7e20d195"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":702,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:55Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":702,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.768979,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:55Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"469def4773226a00bf20204b7e20d195","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837935,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzNX0.pUyTZpWDF30xutPpNf7JbU_lvRy6nsCtQoryV9BJCXk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"469def4773226a00bf20204b7e20d195","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10c837f6-d98f-4515-92c6-7499a3b129fe","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4d4714dd-aa49-4ed9-8c14-7f033092c4f2","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837935.9241443} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"469def4773226a00bf20204b7e20d195","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7cbfc782-afb0-43b5-aa5c-6cf03266ba12","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837935.9285686} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"469def4773226a00bf20204b7e20d195","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10c837f6-d98f-4515-92c6-7499a3b129fe","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"0754634b-6b26-4db0-b029-d9cd43f413fb","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837935.9380777} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ce9653e1-5cb7-4809-9688-06fa59046a68","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837935.938339} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"469def4773226a00bf20204b7e20d195","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10c837f6-d98f-4515-92c6-7499a3b129fe","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10c837f6-d98f-4515-92c6-7499a3b129fe","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:55.938041993Z"}]},"request_id":"effaf751-4623-4090-8145-956fb90c9585","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837935.9420516} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"469def4773226a00bf20204b7e20d195","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"469def4773226a00bf20204b7e20d195"} gateway-1 | {"time_local":"24/Jul/2024:16:18:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.041","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"469def4773226a00bf20204b7e20d195"} device-1 | {"level":"info","message":"POST /devices? 201 36ms","method":"POST","requestID":"469def4773226a00bf20204b7e20d195","responseTime":36,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzNn0.Fp3KLOJByqSRGt_ajR30Y0Lnhsb14vjVdRtSSrCVyrY","level":"info","message":"auth send jwt","requestID":"aa3c6723411305eb45705749f23b1067"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"aa3c6723411305eb45705749f23b1067","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"aa3c6723411305eb45705749f23b1067"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":703,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:56Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":703,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.163564,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:56Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4af0dd7b-f04e-4418-a033-026bf4526094","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"aa3c6723411305eb45705749f23b1067","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/4af0dd7b-f04e-4418-a033-026bf4526094","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837936,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzNn0.Fp3KLOJByqSRGt_ajR30Y0Lnhsb14vjVdRtSSrCVyrY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"aa3c6723411305eb45705749f23b1067","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4af0dd7b-f04e-4418-a033-026bf4526094","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4af0dd7b-f04e-4418-a033-026bf4526094","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:55.895511212Z"}]},"request_id":"b4aee035-8280-4309-962e-95a44b138d52","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837936.4377797} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"aa3c6723411305eb45705749f23b1067","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e7633258-d956-48e1-807a-a030e6959cf0","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837936.444549} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"aa3c6723411305eb45705749f23b1067","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4af0dd7b-f04e-4418-a033-026bf4526094","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4af0dd7b-f04e-4418-a033-026bf4526094","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:55.895511212Z"}]},"request_id":"20dd0771-73bc-4f0a-9ade-342b66d1ac1b","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837936.4578998} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"aa3c6723411305eb45705749f23b1067","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"aa3c6723411305eb45705749f23b1067"} device-1 | {"level":"info","message":"PATCH /devices/4af0dd7b-f04e-4418-a033-026bf4526094 200 37ms","method":"PATCH","requestID":"aa3c6723411305eb45705749f23b1067","responseTime":37,"status":200,"url":"/devices/4af0dd7b-f04e-4418-a033-026bf4526094"} gateway-1 | {"time_local":"24/Jul/2024:16:18:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/4af0dd7b-f04e-4418-a033-026bf4526094 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.044","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"aa3c6723411305eb45705749f23b1067"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzNn0.Fp3KLOJByqSRGt_ajR30Y0Lnhsb14vjVdRtSSrCVyrY","level":"info","message":"auth send jwt","requestID":"96ac7d47938da97598a291d945f62a12"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"96ac7d47938da97598a291d945f62a12","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"96ac7d47938da97598a291d945f62a12"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":704,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:56Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":704,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.32516,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:56Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4af0dd7b-f04e-4418-a033-026bf4526094","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"96ac7d47938da97598a291d945f62a12","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/4af0dd7b-f04e-4418-a033-026bf4526094","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837936,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzNn0.Fp3KLOJByqSRGt_ajR30Y0Lnhsb14vjVdRtSSrCVyrY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"96ac7d47938da97598a291d945f62a12","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"96ac7d47938da97598a291d945f62a12"} gateway-1 | {"time_local":"24/Jul/2024:16:18:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/4af0dd7b-f04e-4418-a033-026bf4526094/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"96ac7d47938da97598a291d945f62a12"} device-1 | {"level":"info","message":"POST /devices/4af0dd7b-f04e-4418-a033-026bf4526094/websocket 200 21ms","method":"POST","requestID":"96ac7d47938da97598a291d945f62a12","responseTime":21,"status":200,"url":"/devices/4af0dd7b-f04e-4418-a033-026bf4526094/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/4af0dd7b-f04e-4418-a033-026bf4526094' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b798d373b8afdac230cdbdc6f0639d05","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b798d373b8afdac230cdbdc6f0639d05","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Jul/2024:16:18:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/10c837f6-d98f-4515-92c6-7499a3b129fe/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":"b798d373b8afdac230cdbdc6f0639d05"} device-1 | {"level":"info","message":"OPTIONS /devices/10c837f6-d98f-4515-92c6-7499a3b129fe/websocket 200 1ms","method":"OPTIONS","requestID":"b798d373b8afdac230cdbdc6f0639d05","responseTime":1,"status":200,"url":"/devices/10c837f6-d98f-4515-92c6-7499a3b129fe/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzN30.6jtNpt_25zSiZ3ZC_Pha7BjyYqlPu4JS-tX-h5UPmGk","level":"info","message":"auth send jwt","requestID":"37a4bd7917aae7296502a4aa6ebe9f4f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"37a4bd7917aae7296502a4aa6ebe9f4f","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"37a4bd7917aae7296502a4aa6ebe9f4f"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":705,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:57Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":705,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.150725,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:57Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/10c837f6-d98f-4515-92c6-7499a3b129fe","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"37a4bd7917aae7296502a4aa6ebe9f4f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/10c837f6-d98f-4515-92c6-7499a3b129fe","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837937,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzN30.6jtNpt_25zSiZ3ZC_Pha7BjyYqlPu4JS-tX-h5UPmGk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"37a4bd7917aae7296502a4aa6ebe9f4f","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"37a4bd7917aae7296502a4aa6ebe9f4f"} device-1 | {"level":"info","message":"POST /devices/10c837f6-d98f-4515-92c6-7499a3b129fe/websocket 200 21ms","method":"POST","requestID":"37a4bd7917aae7296502a4aa6ebe9f4f","responseTime":21,"status":200,"url":"/devices/10c837f6-d98f-4515-92c6-7499a3b129fe/websocket"} gateway-1 | {"time_local":"24/Jul/2024:16:18:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/10c837f6-d98f-4515-92c6-7499a3b129fe/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":"37a4bd7917aae7296502a4aa6ebe9f4f"} device-1 | {"level":"info","message":"device 'http://localhost/devices/10c837f6-d98f-4515-92c6-7499a3b129fe' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzN30.6jtNpt_25zSiZ3ZC_Pha7BjyYqlPu4JS-tX-h5UPmGk","level":"info","message":"auth send jwt","requestID":"c7229d76eb7e5ddfd3f8478f6d0b2299"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c7229d76eb7e5ddfd3f8478f6d0b2299","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c7229d76eb7e5ddfd3f8478f6d0b2299"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":706,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:57Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":706,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.310362,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4af0dd7b-f04e-4418-a033-026bf4526094","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"c7229d76eb7e5ddfd3f8478f6d0b2299","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/4af0dd7b-f04e-4418-a033-026bf4526094","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837937,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzN30.6jtNpt_25zSiZ3ZC_Pha7BjyYqlPu4JS-tX-h5UPmGk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c7229d76eb7e5ddfd3f8478f6d0b2299","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4af0dd7b-f04e-4418-a033-026bf4526094","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4af0dd7b-f04e-4418-a033-026bf4526094","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:55.895511212Z"}]},"request_id":"6aac7d92-71de-4fd7-ae52-b17cd818c43e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837937.9967716} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c7229d76eb7e5ddfd3f8478f6d0b2299","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c7229d76eb7e5ddfd3f8478f6d0b2299"} gateway-1 | {"time_local":"24/Jul/2024:16:18:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4af0dd7b-f04e-4418-a033-026bf4526094? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c7229d76eb7e5ddfd3f8478f6d0b2299"} device-1 | {"level":"info","message":"GET /devices/4af0dd7b-f04e-4418-a033-026bf4526094? 200 17ms","method":"GET","requestID":"c7229d76eb7e5ddfd3f8478f6d0b2299","responseTime":17,"status":200,"url":"/devices/4af0dd7b-f04e-4418-a033-026bf4526094?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzOH0.4eYC6HatREYmCiClhMTe_b0KUUrgoh4u19zo-FQ-Ki8","level":"info","message":"auth send jwt","requestID":"ea541117ee43aecad401ad0002fae60d"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ea541117ee43aecad401ad0002fae60d","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ea541117ee43aecad401ad0002fae60d"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":707,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:58Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":707,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.507847,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/10c837f6-d98f-4515-92c6-7499a3b129fe","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"ea541117ee43aecad401ad0002fae60d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/10c837f6-d98f-4515-92c6-7499a3b129fe","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837938,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzOH0.4eYC6HatREYmCiClhMTe_b0KUUrgoh4u19zo-FQ-Ki8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ea541117ee43aecad401ad0002fae60d","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10c837f6-d98f-4515-92c6-7499a3b129fe","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10c837f6-d98f-4515-92c6-7499a3b129fe","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:55.938041993Z"}]},"request_id":"69db4653-12b4-4dcd-983d-c92cd66e071c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837938.022439} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ea541117ee43aecad401ad0002fae60d","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ea541117ee43aecad401ad0002fae60d"} gateway-1 | {"time_local":"24/Jul/2024:16:18:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/10c837f6-d98f-4515-92c6-7499a3b129fe? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ea541117ee43aecad401ad0002fae60d"} device-1 | {"level":"info","message":"GET /devices/10c837f6-d98f-4515-92c6-7499a3b129fe? 200 20ms","method":"GET","requestID":"ea541117ee43aecad401ad0002fae60d","responseTime":20,"status":200,"url":"/devices/10c837f6-d98f-4515-92c6-7499a3b129fe?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzOH0.4eYC6HatREYmCiClhMTe_b0KUUrgoh4u19zo-FQ-Ki8","level":"info","message":"auth send jwt","requestID":"568b1e03266a00e1305dbad56fed8881"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"568b1e03266a00e1305dbad56fed8881","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"568b1e03266a00e1305dbad56fed8881"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":708,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:58Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":708,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.273016,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"568b1e03266a00e1305dbad56fed8881","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837938,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzOH0.4eYC6HatREYmCiClhMTe_b0KUUrgoh4u19zo-FQ-Ki8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"568b1e03266a00e1305dbad56fed8881","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/598fbb66-4485-4505-890c-be73fb76f948"},"level":"info","message":"Attempting to run experiment","requestID":"568b1e03266a00e1305dbad56fed8881"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/598fbb66-4485-4505-890c-be73fb76f948"},"level":"info","message":"Attempting to book experiment","requestID":"568b1e03266a00e1305dbad56fed8881"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/598fbb66-4485-4505-890c-be73fb76f948"},"level":"info","message":"Successfully booked experiment","requestID":"568b1e03266a00e1305dbad56fed8881"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6e1ad2f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6e1b2110-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":709,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:58Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":709,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.12263,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4af0dd7b-f04e-4418-a033-026bf4526094","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6e1ad2f0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/4af0dd7b-f04e-4418-a033-026bf4526094","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837938,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzOH0.4eYC6HatREYmCiClhMTe_b0KUUrgoh4u19zo-FQ-Ki8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6e1ad2f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51158","level":"info","msg":"Received request.","req_id":710,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51158","level":"info","msg":"Sent response.","req_id":710,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.889892,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/10c837f6-d98f-4515-92c6-7499a3b129fe","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6e1b2110-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/10c837f6-d98f-4515-92c6-7499a3b129fe","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837938,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzOH0.4eYC6HatREYmCiClhMTe_b0KUUrgoh4u19zo-FQ-Ki8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6e1b2110-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4af0dd7b-f04e-4418-a033-026bf4526094","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4af0dd7b-f04e-4418-a033-026bf4526094","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:55.895511212Z"}]},"request_id":"2a204bc9-a975-4d18-8c62-7c30f7fb9209","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837938.0897532} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"6e1ad2f0-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10c837f6-d98f-4515-92c6-7499a3b129fe","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10c837f6-d98f-4515-92c6-7499a3b129fe","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:55.938041993Z"}]},"request_id":"caeba70b-c221-4706-ae34-1e803713b70e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837938.091347} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6e1b2110-49d8-11ef-9fe8-9113c2c8d024","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6e1ad2f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/4af0dd7b-f04e-4418-a033-026bf4526094? 200 16ms","method":"GET","requestID":"6e1ad2f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":16,"status":200,"url":"/devices/4af0dd7b-f04e-4418-a033-026bf4526094?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6e1b2110-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/10c837f6-d98f-4515-92c6-7499a3b129fe? 200 15ms","method":"GET","requestID":"6e1b2110-49d8-11ef-9fe8-9113c2c8d024","responseTime":15,"status":200,"url":"/devices/10c837f6-d98f-4515-92c6-7499a3b129fe?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/598fbb66-4485-4505-890c-be73fb76f948"},"level":"info","message":"Setting up experiment","requestID":"568b1e03266a00e1305dbad56fed8881"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/598fbb66-4485-4505-890c-be73fb76f948"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"568b1e03266a00e1305dbad56fed8881"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/598fbb66-4485-4505-890c-be73fb76f948"},"level":"info","message":"Successfully locked booking for experiment","requestID":"568b1e03266a00e1305dbad56fed8881"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/598fbb66-4485-4505-890c-be73fb76f948"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"568b1e03266a00e1305dbad56fed8881"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/598fbb66-4485-4505-890c-be73fb76f948"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"568b1e03266a00e1305dbad56fed8881"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/598fbb66-4485-4505-890c-be73fb76f948"},"level":"info","message":"Attempting to update booking for experiment","requestID":"568b1e03266a00e1305dbad56fed8881"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/598fbb66-4485-4505-890c-be73fb76f948"},"level":"info","message":"Successfully updated booking for experiment","requestID":"568b1e03266a00e1305dbad56fed8881"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/598fbb66-4485-4505-890c-be73fb76f948"},"level":"info","message":"Successfully set up experiment","requestID":"568b1e03266a00e1305dbad56fed8881"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6e250c20-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6e255a40-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6e25a860-49d8-11ef-9fe8-9113c2c8d024"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/598fbb66-4485-4505-890c-be73fb76f948"},"level":"info","message":"Successfully running experiment","requestID":"568b1e03266a00e1305dbad56fed8881"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":711,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:58Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":711,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.514288,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51158","level":"info","msg":"Received request.","req_id":712,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4af0dd7b-f04e-4418-a033-026bf4526094","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6e250c20-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/4af0dd7b-f04e-4418-a033-026bf4526094","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837938,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzOH0.4eYC6HatREYmCiClhMTe_b0KUUrgoh4u19zo-FQ-Ki8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6e250c20-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51158","level":"info","msg":"Sent response.","req_id":712,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.707879,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/10c837f6-d98f-4515-92c6-7499a3b129fe","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6e255a40-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/10c837f6-d98f-4515-92c6-7499a3b129fe","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837938,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzOH0.4eYC6HatREYmCiClhMTe_b0KUUrgoh4u19zo-FQ-Ki8"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"6e255a40-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4af0dd7b-f04e-4418-a033-026bf4526094","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4af0dd7b-f04e-4418-a033-026bf4526094","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:55.895511212Z"}]},"request_id":"c6033e23-9811-4b3e-b035-b93ce9b7731a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837938.1627936} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"6e250c20-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10c837f6-d98f-4515-92c6-7499a3b129fe","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10c837f6-d98f-4515-92c6-7499a3b129fe","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:55.938041993Z"}]},"request_id":"11ea8e7f-5068-46a1-8425-a892a208d169","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837938.165053} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"6e255a40-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:48396","level":"info","msg":"Received request.","req_id":713,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:58Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4af0dd7b-f04e-4418-a033-026bf4526094","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"acc47d6f-900a-4913-8996-6221bf8932a5","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837938.1707542} authorization-1 | {"client_addr":"127.0.0.1:48396","level":"info","msg":"Sent response.","req_id":713,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.638571,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:58Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6e250c20-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4af0dd7b-f04e-4418-a033-026bf4526094","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6e25a860-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4af0dd7b-f04e-4418-a033-026bf4526094","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/4af0dd7b-f04e-4418-a033-026bf4526094? 200 27ms","method":"GET","requestID":"6e250c20-49d8-11ef-9fe8-9113c2c8d024","responseTime":27,"status":200,"url":"/devices/4af0dd7b-f04e-4418-a033-026bf4526094?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6e255a40-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"level":"info","message":"POST /authorize 200 19ms","method":"POST","requestID":"6e25a860-49d8-11ef-9fe8-9113c2c8d024","responseTime":19,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/10c837f6-d98f-4515-92c6-7499a3b129fe? 200 26ms","method":"GET","requestID":"6e255a40-49d8-11ef-9fe8-9113c2c8d024","responseTime":26,"status":200,"url":"/devices/10c837f6-d98f-4515-92c6-7499a3b129fe?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6e25a860-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/4af0dd7b-f04e-4418-a033-026bf4526094/signaling 200 28ms","method":"POST","requestID":"6e25a860-49d8-11ef-9fe8-9113c2c8d024","responseTime":28,"status":200,"url":"/devices/4af0dd7b-f04e-4418-a033-026bf4526094/signaling"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F598fbb66-4485-4505-890c-be73fb76f948#owner@http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F598fbb66-4485-4505-890c-be73fb76f948","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"3b534079-b5fa-463b-a334-9f10f777b9c1","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837938.1780334} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3ce4613b-0583-4e27-8fb2-70536bbffd2c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837938.178204} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6e29ee20-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"568b1e03266a00e1305dbad56fed8881","responseTime":23,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6e2a8a60-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":714,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51158","level":"info","msg":"Received request.","req_id":715,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:58Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4af0dd7b-f04e-4418-a033-026bf4526094","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3faea4ae-2cf3-4a6e-8871-2f062e0fcc1e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837938.186942} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":714,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.788582,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4af0dd7b-f04e-4418-a033-026bf4526094","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6e29ee20-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4af0dd7b-f04e-4418-a033-026bf4526094","object_type":"device","rebac_allow":false,"scope_allow":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":"6e29ee20-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/598fbb66-4485-4505-890c-be73fb76f948","user":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"568b1e03266a00e1305dbad56fed8881"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10c837f6-d98f-4515-92c6-7499a3b129fe","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6f51fc51-c32b-4f5e-9122-419de4d5363e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837938.1885736} authorization-1 | {"client_addr":"127.0.0.1:51158","level":"info","msg":"Sent response.","req_id":715,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.548761,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:58Z"} gateway-1 | {"time_local":"24/Jul/2024:16:18:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1215","request_time":"0.161","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"568b1e03266a00e1305dbad56fed8881"} experiment-1 | {"level":"info","message":"POST /experiments? 201 153ms","method":"POST","requestID":"568b1e03266a00e1305dbad56fed8881","responseTime":153,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/10c837f6-d98f-4515-92c6-7499a3b129fe","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6e2a8a60-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/10c837f6-d98f-4515-92c6-7499a3b129fe","object_type":"device","rebac_allow":false,"scope_allow":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":"6e2a8a60-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6e29ee20-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/4af0dd7b-f04e-4418-a033-026bf4526094/signaling 200 15ms","method":"POST","requestID":"6e29ee20-49d8-11ef-9fe8-9113c2c8d024","responseTime":15,"status":200,"url":"/devices/4af0dd7b-f04e-4418-a033-026bf4526094/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6e2a8a60-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/10c837f6-d98f-4515-92c6-7499a3b129fe/signaling 200 14ms","method":"POST","requestID":"6e2a8a60-49d8-11ef-9fe8-9113c2c8d024","responseTime":14,"status":200,"url":"/devices/10c837f6-d98f-4515-92c6-7499a3b129fe/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzOH0.4eYC6HatREYmCiClhMTe_b0KUUrgoh4u19zo-FQ-Ki8","level":"info","message":"auth send jwt","requestID":"7d7281ae9ec5c5ff7685737683aec2bb"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7d7281ae9ec5c5ff7685737683aec2bb","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6e2cd450-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7d7281ae9ec5c5ff7685737683aec2bb"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":716,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51158","level":"info","msg":"Received request.","req_id":717,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51158","level":"info","msg":"Sent response.","req_id":717,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.225096,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:58Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10c837f6-d98f-4515-92c6-7499a3b129fe","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"30fd4d10-006b-4d56-890b-32622ca92ef6","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837938.2032874} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4af0dd7b-f04e-4418-a033-026bf4526094","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"7d7281ae9ec5c5ff7685737683aec2bb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/4af0dd7b-f04e-4418-a033-026bf4526094","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837938,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzOH0.4eYC6HatREYmCiClhMTe_b0KUUrgoh4u19zo-FQ-Ki8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7d7281ae9ec5c5ff7685737683aec2bb","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":716,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.61691,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/10c837f6-d98f-4515-92c6-7499a3b129fe","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6e2cd450-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/10c837f6-d98f-4515-92c6-7499a3b129fe","object_type":"device","rebac_allow":false,"scope_allow":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":"6e2cd450-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4af0dd7b-f04e-4418-a033-026bf4526094","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4af0dd7b-f04e-4418-a033-026bf4526094","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:55.895511212Z"}]},"request_id":"e4b51d36-ffd6-4344-8458-20cd7f07302f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837938.2090816} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6e2cd450-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/10c837f6-d98f-4515-92c6-7499a3b129fe/signaling 200 13ms","method":"POST","requestID":"6e2cd450-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/devices/10c837f6-d98f-4515-92c6-7499a3b129fe/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7d7281ae9ec5c5ff7685737683aec2bb","responseTime":4,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/598fbb66-4485-4505-890c-be73fb76f948"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"568b1e03266a00e1305dbad56fed8881"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/598fbb66-4485-4505-890c-be73fb76f948"},"level":"info","message":"Building connection plan","requestID":"568b1e03266a00e1305dbad56fed8881"} 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":"55954020-289c-47cd-b5de-771afa31ecbc"},{"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":"61d491fc-afc7-4e64-a8c0-0fecbb9d5a8b"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"ed4137fa-9d52-4527-824a-75c3ea6cd322"}]},"level":"info","message":"Built pairwise service configurations","requestID":"568b1e03266a00e1305dbad56fed8881"} experiment-1 | {"data":{"connectionPlan":[{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/4af0dd7b-f04e-4418-a033-026bf4526094"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/10c837f6-d98f-4515-92c6-7499a3b129fe"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"568b1e03266a00e1305dbad56fed8881"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"6e2f1e40-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7d7281ae9ec5c5ff7685737683aec2bb"} gateway-1 | {"time_local":"24/Jul/2024:16:18:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4af0dd7b-f04e-4418-a033-026bf4526094? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7d7281ae9ec5c5ff7685737683aec2bb"} device-1 | {"level":"info","message":"GET /devices/4af0dd7b-f04e-4418-a033-026bf4526094? 200 15ms","method":"GET","requestID":"7d7281ae9ec5c5ff7685737683aec2bb","responseTime":15,"status":200,"url":"/devices/4af0dd7b-f04e-4418-a033-026bf4526094?"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":718,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:58Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":718,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.911168,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6e2f1e40-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837938,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzOH0.4eYC6HatREYmCiClhMTe_b0KUUrgoh4u19zo-FQ-Ki8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6e2f1e40-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzOH0.4eYC6HatREYmCiClhMTe_b0KUUrgoh4u19zo-FQ-Ki8","level":"info","message":"auth send jwt","requestID":"b981bc41c792ba579e9fbcd1b87c91b7"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"b981bc41c792ba579e9fbcd1b87c91b7","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b981bc41c792ba579e9fbcd1b87c91b7"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":719,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:58Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":719,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.954691,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/10c837f6-d98f-4515-92c6-7499a3b129fe","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"b981bc41c792ba579e9fbcd1b87c91b7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/10c837f6-d98f-4515-92c6-7499a3b129fe","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837938,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzkzOH0.4eYC6HatREYmCiClhMTe_b0KUUrgoh4u19zo-FQ-Ki8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b981bc41c792ba579e9fbcd1b87c91b7","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","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%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"ffc5d3ec-d685-4987-b3b9-b5352cc65113","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837938.2264216} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"598ac5fa-ea1f-488e-80ba-f96dfbda8e1e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837938.2266881} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10c837f6-d98f-4515-92c6-7499a3b129fe","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10c837f6-d98f-4515-92c6-7499a3b129fe","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:18:55.938041993Z"}]},"request_id":"633abbeb-2672-4299-bf1f-80ef7d77b3e9","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837938.2278488} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"6e2f1e40-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/relations/update"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b981bc41c792ba579e9fbcd1b87c91b7","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b981bc41c792ba579e9fbcd1b87c91b7"} device-1 | {"level":"info","message":"GET /devices/10c837f6-d98f-4515-92c6-7499a3b129fe? 200 13ms","method":"GET","requestID":"b981bc41c792ba579e9fbcd1b87c91b7","responseTime":13,"status":200,"url":"/devices/10c837f6-d98f-4515-92c6-7499a3b129fe?"} gateway-1 | {"time_local":"24/Jul/2024:16:18:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/10c837f6-d98f-4515-92c6-7499a3b129fe? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b981bc41c792ba579e9fbcd1b87c91b7"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"6e2f1e40-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"6e2f1e40-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/44788142-b09d-4b5c-be2d-a17a1901c435'","requestID":"6e2f1e40-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/44788142-b09d-4b5c-be2d-a17a1901c435'","requestID":"6e2f1e40-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"6e2f1e40-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 30ms","method":"POST","requestID":"6e2f1e40-49d8-11ef-9fe8-9113c2c8d024","responseTime":30,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"6e2f1e40-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/44788142-b09d-4b5c-be2d-a17a1901c435","device":"10c837f6-d98f-4515-92c6-7499a3b129fe","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/598fbb66-4485-4505-890c-be73fb76f948"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"568b1e03266a00e1305dbad56fed8881"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6e375ba0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":720,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:58Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4af0dd7b-f04e-4418-a033-026bf4526094","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"92078d14-27e6-4901-9880-dc953d8283dc","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837938.2719526} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":720,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.992102,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4af0dd7b-f04e-4418-a033-026bf4526094","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6e375ba0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4af0dd7b-f04e-4418-a033-026bf4526094","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6e375ba0-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6e375ba0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/4af0dd7b-f04e-4418-a033-026bf4526094/signaling 200 10ms","method":"POST","requestID":"6e375ba0-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/devices/4af0dd7b-f04e-4418-a033-026bf4526094/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6e395770-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"device":"10c837f6-d98f-4515-92c6-7499a3b129fe","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"10c837f6-d98f-4515-92c6-7499a3b129fe","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":721,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:18:58Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10c837f6-d98f-4515-92c6-7499a3b129fe","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"031702f7-7cba-47e7-abae-4f3be0346b8d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837938.2834618} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":721,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.513815,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:18:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/10c837f6-d98f-4515-92c6-7499a3b129fe","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6e395770-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/10c837f6-d98f-4515-92c6-7499a3b129fe","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6e395770-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"content":{"sdp":"v=0\r\no=- 3991914204177211097 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:g58Z\r\na=ice-pwd:E+E6YlUrut9RmzMPrhGOQTnN\r\na=ice-options:trickle\r\na=fingerprint:sha-256 65:5B:5C:98:B0:0E:3C:43:70:7E:EB:53:42:F7:0E:96:AD:6B:D9:AA:17:5F:A5:81:A8:0C:63:C6:91:B4:57:4B\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"10c837f6-d98f-4515-92c6-7499a3b129fe","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6e395770-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/10c837f6-d98f-4515-92c6-7499a3b129fe/signaling 200 10ms","method":"POST","requestID":"6e395770-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/devices/10c837f6-d98f-4515-92c6-7499a3b129fe/signaling"} device-1 | {"device":"10c837f6-d98f-4515-92c6-7499a3b129fe","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"4af0dd7b-f04e-4418-a033-026bf4526094","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"44788142-b09d-4b5c-be2d-a17a1901c435","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"4af0dd7b-f04e-4418-a033-026bf4526094","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"4af0dd7b-f04e-4418-a033-026bf4526094","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"4af0dd7b-f04e-4418-a033-026bf4526094","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"4af0dd7b-f04e-4418-a033-026bf4526094","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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/44788142-b09d-4b5c-be2d-a17a1901c435' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"44788142-b09d-4b5c-be2d-a17a1901c435","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6c99df7e7737b55b072523acfdd00403","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"6c99df7e7737b55b072523acfdd00403","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/4af0dd7b-f04e-4418-a033-026bf4526094"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/10c837f6-d98f-4515-92c6-7499a3b129fe"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/44788142-b09d-4b5c-be2d-a17a1901c435"}}},"level":"info","message":"received a callback","requestID":"6c99df7e7737b55b072523acfdd00403"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"6c99df7e7737b55b072523acfdd00403","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:19: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.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"6c99df7e7737b55b072523acfdd00403"} device-1 | {"content":{"candidate":"candidate:649598886 1 udp 2113937151 3f7cea11-e159-459c-80ca-41f83a884d78.local 59844 typ host generation 0 ufrag g58Z network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"10c837f6-d98f-4515-92c6-7499a3b129fe","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2727706073 1 udp 1677729535 141.24.211.56 59844 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag g58Z network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"10c837f6-d98f-4515-92c6-7499a3b129fe","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:4053320274 1 udp 33562623 141.24.210.113 54493 typ relay raddr 141.24.211.56 rport 59844 generation 0 ufrag g58Z network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"10c837f6-d98f-4515-92c6-7499a3b129fe","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"10c837f6-d98f-4515-92c6-7499a3b129fe","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/10c837f6-d98f-4515-92c6-7499a3b129fe'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/10c837f6-d98f-4515-92c6-7499a3b129fe'"} device-1 | {"data":{"peerconnection":"44788142-b09d-4b5c-be2d-a17a1901c435","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"4af0dd7b-f04e-4418-a033-026bf4526094","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"10c837f6-d98f-4515-92c6-7499a3b129fe","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"4af0dd7b-f04e-4418-a033-026bf4526094","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"44788142-b09d-4b5c-be2d-a17a1901c435","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/44788142-b09d-4b5c-be2d-a17a1901c435' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"44788142-b09d-4b5c-be2d-a17a1901c435","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1f26190998b505dfc15b4f4cfef477da","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"1f26190998b505dfc15b4f4cfef477da","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/4af0dd7b-f04e-4418-a033-026bf4526094"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/10c837f6-d98f-4515-92c6-7499a3b129fe"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/44788142-b09d-4b5c-be2d-a17a1901c435"}}},"level":"info","message":"received a callback","requestID":"1f26190998b505dfc15b4f4cfef477da"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"6f7580f0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":722,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:00Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F44788142-b09d-4b5c-be2d-a17a1901c435","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2076957c-c7cc-4146-83cc-d06421eeac67","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837940.3576314} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":722,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.675269,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/44788142-b09d-4b5c-be2d-a17a1901c435","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6f7580f0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/44788142-b09d-4b5c-be2d-a17a1901c435","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":"6f7580f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"6f7580f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /peerconnections/44788142-b09d-4b5c-be2d-a17a1901c435 200 11ms","method":"GET","requestID":"6f7580f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":11,"status":200,"url":"/peerconnections/44788142-b09d-4b5c-be2d-a17a1901c435"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 46ms","method":"POST","requestID":"1f26190998b505dfc15b4f4cfef477da","responseTime":46,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:19: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.050","http_referrer":"","http_user_agent":"node-fetch","requestID":"1f26190998b505dfc15b4f4cfef477da"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6f7b7460-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":723,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:00Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4af0dd7b-f04e-4418-a033-026bf4526094","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"13dacdf1-b3de-4314-a503-56114a5c8142","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837940.3945067} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":723,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.277495,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4af0dd7b-f04e-4418-a033-026bf4526094","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6f7b7460-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4af0dd7b-f04e-4418-a033-026bf4526094","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6f7b7460-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6f7b7460-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/4af0dd7b-f04e-4418-a033-026bf4526094/signaling 200 11ms","method":"POST","requestID":"6f7b7460-49d8-11ef-9fe8-9113c2c8d024","responseTime":11,"status":200,"url":"/devices/4af0dd7b-f04e-4418-a033-026bf4526094/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6f7d9740-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":724,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:00Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10c837f6-d98f-4515-92c6-7499a3b129fe","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"635e4d2b-e367-4cf1-87c4-1ec81158f156","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837940.409709} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":724,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.289219,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/10c837f6-d98f-4515-92c6-7499a3b129fe","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6f7d9740-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/10c837f6-d98f-4515-92c6-7499a3b129fe","object_type":"device","rebac_allow":false,"scope_allow":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":"6f7d9740-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6f7d9740-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/10c837f6-d98f-4515-92c6-7499a3b129fe/signaling 200 13ms","method":"POST","requestID":"6f7d9740-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/devices/10c837f6-d98f-4515-92c6-7499a3b129fe/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0MH0.wZK6jI3rphssJZiytB8AEQxfS3SV18fBdxddxxl8lSI","level":"info","message":"auth send jwt","requestID":"07498d11db86e4e5cb6088a9bba827fc"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"07498d11db86e4e5cb6088a9bba827fc","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/598fbb66-4485-4505-890c-be73fb76f948","requestID":"07498d11db86e4e5cb6088a9bba827fc"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":725,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:00Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":725,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.282224,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/598fbb66-4485-4505-890c-be73fb76f948","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"07498d11db86e4e5cb6088a9bba827fc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/598fbb66-4485-4505-890c-be73fb76f948","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837940,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0MH0.wZK6jI3rphssJZiytB8AEQxfS3SV18fBdxddxxl8lSI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"07498d11db86e4e5cb6088a9bba827fc","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/598fbb66-4485-4505-890c-be73fb76f948","requestID":"07498d11db86e4e5cb6088a9bba827fc"} gateway-1 | {"time_local":"24/Jul/2024:16:19:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/598fbb66-4485-4505-890c-be73fb76f948 HTTP/1.1","status": "200","body_bytes_sent":"1288","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"07498d11db86e4e5cb6088a9bba827fc"} experiment-1 | {"level":"info","message":"GET /experiments/598fbb66-4485-4505-890c-be73fb76f948 200 15ms","method":"GET","requestID":"07498d11db86e4e5cb6088a9bba827fc","responseTime":15,"status":200,"url":"/experiments/598fbb66-4485-4505-890c-be73fb76f948"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0MH0.wZK6jI3rphssJZiytB8AEQxfS3SV18fBdxddxxl8lSI","level":"info","message":"auth send jwt","requestID":"6d6232f0e66808841d282cf21cadc95f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6d6232f0e66808841d282cf21cadc95f","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/598fbb66-4485-4505-890c-be73fb76f948","requestID":"6d6232f0e66808841d282cf21cadc95f"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":726,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:00Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":726,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.623744,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:00Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/598fbb66-4485-4505-890c-be73fb76f948","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6d6232f0e66808841d282cf21cadc95f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/598fbb66-4485-4505-890c-be73fb76f948","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837940,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0MH0.wZK6jI3rphssJZiytB8AEQxfS3SV18fBdxddxxl8lSI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6d6232f0e66808841d282cf21cadc95f","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/598fbb66-4485-4505-890c-be73fb76f948"},"level":"info","message":"Attempting to finish experiment","requestID":"6d6232f0e66808841d282cf21cadc95f"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"6f89f350-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":727,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:00Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":727,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.376236,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:00Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/44788142-b09d-4b5c-be2d-a17a1901c435","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6f89f350-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:http://localhost/peerconnections/44788142-b09d-4b5c-be2d-a17a1901c435","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837940,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0MH0.wZK6jI3rphssJZiytB8AEQxfS3SV18fBdxddxxl8lSI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6f89f350-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/44788142-b09d-4b5c-be2d-a17a1901c435","device":"10c837f6-d98f-4515-92c6-7499a3b129fe","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"4af0dd7b-f04e-4418-a033-026bf4526094","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"4af0dd7b-f04e-4418-a033-026bf4526094","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"4af0dd7b-f04e-4418-a033-026bf4526094","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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/44788142-b09d-4b5c-be2d-a17a1901c435' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/44788142-b09d-4b5c-be2d-a17a1901c435' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"44788142-b09d-4b5c-be2d-a17a1901c435","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F44788142-b09d-4b5c-be2d-a17a1901c435': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F44788142-b09d-4b5c-be2d-a17a1901c435","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"5e269ffe-1ce0-4ca9-b859-d2818f4019e1","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837940.5134296} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"53af15c5a973940207e874d227c4ba0f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1c694716-a76a-4386-9446-a21e92ed4a24","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837940.514096} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"53af15c5a973940207e874d227c4ba0f","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"6f89f350-49d8-11ef-9fe8-9113c2c8d024","responseTime":12,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4687b0c1d8b14f3a27636d9595e487dc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/4af0dd7b-f04e-4418-a033-026bf4526094"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/10c837f6-d98f-4515-92c6-7499a3b129fe"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/44788142-b09d-4b5c-be2d-a17a1901c435"}}},"level":"info","message":"received a callback","requestID":"53af15c5a973940207e874d227c4ba0f"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4687b0c1d8b14f3a27636d9595e487dc","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/4af0dd7b-f04e-4418-a033-026bf4526094"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/10c837f6-d98f-4515-92c6-7499a3b129fe"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/44788142-b09d-4b5c-be2d-a17a1901c435"}}},"level":"info","message":"received a callback","requestID":"4687b0c1d8b14f3a27636d9595e487dc"} device-1 | {"data":{"peerconnection":"44788142-b09d-4b5c-be2d-a17a1901c435","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"6f89f350-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"DELETE /peerconnections/44788142-b09d-4b5c-be2d-a17a1901c435 204 52ms","method":"DELETE","requestID":"6f89f350-49d8-11ef-9fe8-9113c2c8d024","responseTime":52,"status":204,"url":"/peerconnections/44788142-b09d-4b5c-be2d-a17a1901c435"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/598fbb66-4485-4505-890c-be73fb76f948"},"level":"info","message":"Successfully finished experiment","requestID":"6d6232f0e66808841d282cf21cadc95f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6f953df0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":728,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:00Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4af0dd7b-f04e-4418-a033-026bf4526094","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4cefc720-4c83-4429-bf5f-6803ad975800","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837940.5660648} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":728,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.758514,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4af0dd7b-f04e-4418-a033-026bf4526094","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6f953df0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4af0dd7b-f04e-4418-a033-026bf4526094","object_type":"device","rebac_allow":false,"scope_allow":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":"6f953df0-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6f953df0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/4af0dd7b-f04e-4418-a033-026bf4526094/signaling 200 13ms","method":"POST","requestID":"6f953df0-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/devices/4af0dd7b-f04e-4418-a033-026bf4526094/signaling"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F598fbb66-4485-4505-890c-be73fb76f948': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F598fbb66-4485-4505-890c-be73fb76f948","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"36b7cea7-017f-403f-9eaf-315d7a7fd229","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837940.572643} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4980eb7f-c82e-4b4f-85bb-944b67e584a2","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837940.5730813} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"6d6232f0e66808841d282cf21cadc95f","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6f97d600-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":729,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:00Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10c837f6-d98f-4515-92c6-7499a3b129fe","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cf94a330-2327-4db1-9de1-cc500d289d0c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837940.5839005} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":729,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.025329,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/10c837f6-d98f-4515-92c6-7499a3b129fe","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6f97d600-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/10c837f6-d98f-4515-92c6-7499a3b129fe","object_type":"device","rebac_allow":false,"scope_allow":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":"6f97d600-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6f97d600-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/10c837f6-d98f-4515-92c6-7499a3b129fe/signaling 200 14ms","method":"POST","requestID":"6f97d600-49d8-11ef-9fe8-9113c2c8d024","responseTime":14,"status":200,"url":"/devices/10c837f6-d98f-4515-92c6-7499a3b129fe/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/598fbb66-4485-4505-890c-be73fb76f948","requestID":"6d6232f0e66808841d282cf21cadc95f"} gateway-1 | {"time_local":"24/Jul/2024:16:19:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/598fbb66-4485-4505-890c-be73fb76f948 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.185","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6d6232f0e66808841d282cf21cadc95f"} experiment-1 | {"level":"info","message":"DELETE /experiments/598fbb66-4485-4505-890c-be73fb76f948 204 180ms","method":"DELETE","requestID":"6d6232f0e66808841d282cf21cadc95f","responseTime":180,"status":204,"url":"/experiments/598fbb66-4485-4505-890c-be73fb76f948"} gateway-1 | {"time_local":"24/Jul/2024:16:19:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3193","request_time":"4.158","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"6227c18648ecda7c8f7b94a43950bea8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 135ms","method":"POST","requestID":"53af15c5a973940207e874d227c4ba0f","responseTime":135,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:19: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.140","http_referrer":"","http_user_agent":"node-fetch","requestID":"53af15c5a973940207e874d227c4ba0f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 134ms","method":"POST","requestID":"4687b0c1d8b14f3a27636d9595e487dc","responseTime":134,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:19: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.140","http_referrer":"","http_user_agent":"node-fetch","requestID":"4687b0c1d8b14f3a27636d9595e487dc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0MH0.wZK6jI3rphssJZiytB8AEQxfS3SV18fBdxddxxl8lSI","level":"info","message":"auth send jwt","requestID":"aa99b52003cc535652e2e8a159b1eb31"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"aa99b52003cc535652e2e8a159b1eb31","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"aa99b52003cc535652e2e8a159b1eb31"} gateway-1 | {"time_local":"24/Jul/2024:16:19:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2702","request_time":"2.698","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e210d2f92cefb643e7068dfb655d5315"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":730,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:00Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":730,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.066942,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:00Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"aa99b52003cc535652e2e8a159b1eb31","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837940,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0MH0.wZK6jI3rphssJZiytB8AEQxfS3SV18fBdxddxxl8lSI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"aa99b52003cc535652e2e8a159b1eb31","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/4af0dd7b-f04e-4418-a033-026bf4526094' 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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc985c344-0eb3-468d-988b-4150e0b9863f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"761c5210-d0a3-453e-b755-efd7851db3d2","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837940.6776292} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"aa99b52003cc535652e2e8a159b1eb31","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/10c837f6-d98f-4515-92c6-7499a3b129fe' 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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ead83c99-bb51-4416-a13a-8c91555c5adc","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837940.6825783} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"aa99b52003cc535652e2e8a159b1eb31","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc985c344-0eb3-468d-988b-4150e0b9863f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"c515c5fa-ebe4-4f63-997f-d8d7661d1d35","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837940.692309} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e912dab6-1f80-4f12-af71-3c175d2665f9","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837940.692486} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"aa99b52003cc535652e2e8a159b1eb31","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc985c344-0eb3-468d-988b-4150e0b9863f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc985c344-0eb3-468d-988b-4150e0b9863f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:00.692282960Z"}]},"request_id":"62a52a55-6ea1-4522-90e1-797caff4c84e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837940.7017539} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"aa99b52003cc535652e2e8a159b1eb31","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"aa99b52003cc535652e2e8a159b1eb31"} gateway-1 | {"time_local":"24/Jul/2024:16:19:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"aa99b52003cc535652e2e8a159b1eb31"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"aa99b52003cc535652e2e8a159b1eb31","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0MH0.wZK6jI3rphssJZiytB8AEQxfS3SV18fBdxddxxl8lSI","level":"info","message":"auth send jwt","requestID":"a38360077fd5ce0e79a41a417d1436e6"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a38360077fd5ce0e79a41a417d1436e6","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a38360077fd5ce0e79a41a417d1436e6"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":731,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:00Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":731,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.892825,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:00Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"a38360077fd5ce0e79a41a417d1436e6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837940,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0MH0.wZK6jI3rphssJZiytB8AEQxfS3SV18fBdxddxxl8lSI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a38360077fd5ce0e79a41a417d1436e6","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93051d66-4c3d-4625-ba6e-bb8cd584fbf4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"b05edb51-e1ee-43b4-a4eb-2f8d41837251","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837940.7386765} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a38360077fd5ce0e79a41a417d1436e6","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8c2a106d-2777-436d-98e4-379c833613ef","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837940.744108} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"a38360077fd5ce0e79a41a417d1436e6","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93051d66-4c3d-4625-ba6e-bb8cd584fbf4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"cc395fad-f6af-4963-a9e6-97970b418356","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837940.7548482} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0aba05e3-5885-475c-a46e-ec6a27dd93ac","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837940.7550657} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"a38360077fd5ce0e79a41a417d1436e6","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93051d66-4c3d-4625-ba6e-bb8cd584fbf4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93051d66-4c3d-4625-ba6e-bb8cd584fbf4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:00.754825085Z"}]},"request_id":"ba3acc9e-5cc8-4a65-85db-0b2f00f391b7","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837940.7589588} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a38360077fd5ce0e79a41a417d1436e6","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a38360077fd5ce0e79a41a417d1436e6"} gateway-1 | {"time_local":"24/Jul/2024:16:19:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a38360077fd5ce0e79a41a417d1436e6"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"a38360077fd5ce0e79a41a417d1436e6","responseTime":49,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0MX0.RBtCgWNqfJimLYicud2DYNA2HbExbFzn9ddAQD946VA","level":"info","message":"auth send jwt","requestID":"2ac2f34470f898a4191e85a30ffe1097"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"2ac2f34470f898a4191e85a30ffe1097","responseTime":7,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0MX0.RBtCgWNqfJimLYicud2DYNA2HbExbFzn9ddAQD946VA","level":"info","message":"auth send jwt","requestID":"584ea3601d315000c027cc8f4c7c2a98"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"2ac2f34470f898a4191e85a30ffe1097"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"584ea3601d315000c027cc8f4c7c2a98","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"584ea3601d315000c027cc8f4c7c2a98"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":732,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:01Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":732,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.688408,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51158","level":"info","msg":"Received request.","req_id":733,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:01Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c985c344-0eb3-468d-988b-4150e0b9863f","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"2ac2f34470f898a4191e85a30ffe1097","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/c985c344-0eb3-468d-988b-4150e0b9863f","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837941,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0MX0.RBtCgWNqfJimLYicud2DYNA2HbExbFzn9ddAQD946VA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2ac2f34470f898a4191e85a30ffe1097","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51158","level":"info","msg":"Sent response.","req_id":733,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.913111,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:01Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"584ea3601d315000c027cc8f4c7c2a98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837941,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0MX0.RBtCgWNqfJimLYicud2DYNA2HbExbFzn9ddAQD946VA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"584ea3601d315000c027cc8f4c7c2a98","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc985c344-0eb3-468d-988b-4150e0b9863f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc985c344-0eb3-468d-988b-4150e0b9863f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:00.692282960Z"}]},"request_id":"24fcea47-b6c1-421f-b936-bbe4915cc690","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837941.2477562} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2ac2f34470f898a4191e85a30ffe1097","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93051d66-4c3d-4625-ba6e-bb8cd584fbf4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93051d66-4c3d-4625-ba6e-bb8cd584fbf4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:00.754825085Z"}]},"request_id":"2cdd0313-4f06-4bcc-a155-f30dde3ed721","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837941.2486365} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"584ea3601d315000c027cc8f4c7c2a98","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0020482f-0cfb-4b4f-b776-31ba1c3aabe7","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837941.2529213} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"2ac2f34470f898a4191e85a30ffe1097","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"01eb377a-be4d-4ded-9a54-8a68b4ab494b","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837941.2549863} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"584ea3601d315000c027cc8f4c7c2a98","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93051d66-4c3d-4625-ba6e-bb8cd584fbf4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93051d66-4c3d-4625-ba6e-bb8cd584fbf4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:00.754825085Z"}]},"request_id":"e31419fc-358b-4653-97da-218b5e32ff66","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837941.259085} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"584ea3601d315000c027cc8f4c7c2a98","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"584ea3601d315000c027cc8f4c7c2a98"} device-1 | {"level":"info","message":"PATCH /devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4 200 23ms","method":"PATCH","requestID":"584ea3601d315000c027cc8f4c7c2a98","responseTime":23,"status":200,"url":"/devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4"} gateway-1 | {"time_local":"24/Jul/2024:16:19:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.034","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"584ea3601d315000c027cc8f4c7c2a98"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0MX0.RBtCgWNqfJimLYicud2DYNA2HbExbFzn9ddAQD946VA","level":"info","message":"auth send jwt","requestID":"2e73de70c7bae17d6e9475b63d482de8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2e73de70c7bae17d6e9475b63d482de8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"2e73de70c7bae17d6e9475b63d482de8"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc985c344-0eb3-468d-988b-4150e0b9863f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc985c344-0eb3-468d-988b-4150e0b9863f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:00.692282960Z"}]},"request_id":"1ab6e40a-d508-4605-b287-ca32a2e8c12d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837941.270799} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2ac2f34470f898a4191e85a30ffe1097","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":734,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:01Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":734,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.693995,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:01Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"2ac2f34470f898a4191e85a30ffe1097"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"2e73de70c7bae17d6e9475b63d482de8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837941,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0MX0.RBtCgWNqfJimLYicud2DYNA2HbExbFzn9ddAQD946VA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2e73de70c7bae17d6e9475b63d482de8","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"24/Jul/2024:16:19:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/c985c344-0eb3-468d-988b-4150e0b9863f HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.046","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"2ac2f34470f898a4191e85a30ffe1097"} device-1 | {"level":"info","message":"PATCH /devices/c985c344-0eb3-468d-988b-4150e0b9863f 200 37ms","method":"PATCH","requestID":"2ac2f34470f898a4191e85a30ffe1097","responseTime":37,"status":200,"url":"/devices/c985c344-0eb3-468d-988b-4150e0b9863f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0MX0.RBtCgWNqfJimLYicud2DYNA2HbExbFzn9ddAQD946VA","level":"info","message":"auth send jwt","requestID":"8fdc53980f5e900abec8e4673275c0e7"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"8fdc53980f5e900abec8e4673275c0e7","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"8fdc53980f5e900abec8e4673275c0e7"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":735,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:01Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":735,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.216907,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:01Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c985c344-0eb3-468d-988b-4150e0b9863f","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"8fdc53980f5e900abec8e4673275c0e7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/c985c344-0eb3-468d-988b-4150e0b9863f","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837941,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0MX0.RBtCgWNqfJimLYicud2DYNA2HbExbFzn9ddAQD946VA"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"2e73de70c7bae17d6e9475b63d482de8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8fdc53980f5e900abec8e4673275c0e7","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"24/Jul/2024:16:19:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"2e73de70c7bae17d6e9475b63d482de8"} device-1 | {"level":"info","message":"POST /devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4/websocket 200 18ms","method":"POST","requestID":"2e73de70c7bae17d6e9475b63d482de8","responseTime":18,"status":200,"url":"/devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"8fdc53980f5e900abec8e4673275c0e7"} device-1 | {"level":"info","message":"POST /devices/c985c344-0eb3-468d-988b-4150e0b9863f/websocket 200 17ms","method":"POST","requestID":"8fdc53980f5e900abec8e4673275c0e7","responseTime":17,"status":200,"url":"/devices/c985c344-0eb3-468d-988b-4150e0b9863f/websocket"} gateway-1 | {"time_local":"24/Jul/2024:16:19:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c985c344-0eb3-468d-988b-4150e0b9863f/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"8fdc53980f5e900abec8e4673275c0e7"} device-1 | {"level":"info","message":"device 'http://localhost/devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c985c344-0eb3-468d-988b-4150e0b9863f' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0MX0.RBtCgWNqfJimLYicud2DYNA2HbExbFzn9ddAQD946VA","level":"info","message":"auth send jwt","requestID":"0a1bf101dcff51d3dae65c6bda7486c9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0a1bf101dcff51d3dae65c6bda7486c9","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0a1bf101dcff51d3dae65c6bda7486c9"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":736,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:01Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":736,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.79795,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c985c344-0eb3-468d-988b-4150e0b9863f","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"0a1bf101dcff51d3dae65c6bda7486c9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/c985c344-0eb3-468d-988b-4150e0b9863f","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837941,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0MX0.RBtCgWNqfJimLYicud2DYNA2HbExbFzn9ddAQD946VA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0a1bf101dcff51d3dae65c6bda7486c9","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc985c344-0eb3-468d-988b-4150e0b9863f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc985c344-0eb3-468d-988b-4150e0b9863f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:00.692282960Z"}]},"request_id":"99685bd0-28fa-4aec-8fb7-bc7b04260c87","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837941.3335319} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0a1bf101dcff51d3dae65c6bda7486c9","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0a1bf101dcff51d3dae65c6bda7486c9"} device-1 | {"level":"info","message":"GET /devices/c985c344-0eb3-468d-988b-4150e0b9863f? 200 13ms","method":"GET","requestID":"0a1bf101dcff51d3dae65c6bda7486c9","responseTime":13,"status":200,"url":"/devices/c985c344-0eb3-468d-988b-4150e0b9863f?"} gateway-1 | {"time_local":"24/Jul/2024:16:19:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c985c344-0eb3-468d-988b-4150e0b9863f? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0a1bf101dcff51d3dae65c6bda7486c9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0MX0.RBtCgWNqfJimLYicud2DYNA2HbExbFzn9ddAQD946VA","level":"info","message":"auth send jwt","requestID":"3ac3b591ecb36ac5df7a7dacf163108a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3ac3b591ecb36ac5df7a7dacf163108a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3ac3b591ecb36ac5df7a7dacf163108a"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":737,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:01Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":737,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.705626,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"3ac3b591ecb36ac5df7a7dacf163108a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837941,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0MX0.RBtCgWNqfJimLYicud2DYNA2HbExbFzn9ddAQD946VA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3ac3b591ecb36ac5df7a7dacf163108a","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93051d66-4c3d-4625-ba6e-bb8cd584fbf4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93051d66-4c3d-4625-ba6e-bb8cd584fbf4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:00.754825085Z"}]},"request_id":"beee1063-54f0-4cfa-860a-3ecb35427031","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837941.3516827} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3ac3b591ecb36ac5df7a7dacf163108a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3ac3b591ecb36ac5df7a7dacf163108a"} gateway-1 | {"time_local":"24/Jul/2024:16:19:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3ac3b591ecb36ac5df7a7dacf163108a"} device-1 | {"level":"info","message":"GET /devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4? 200 12ms","method":"GET","requestID":"3ac3b591ecb36ac5df7a7dacf163108a","responseTime":12,"status":200,"url":"/devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0MX0.RBtCgWNqfJimLYicud2DYNA2HbExbFzn9ddAQD946VA","level":"info","message":"auth send jwt","requestID":"f7ba448f19526fa9de0f2bdd6f22d4d6"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f7ba448f19526fa9de0f2bdd6f22d4d6","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"f7ba448f19526fa9de0f2bdd6f22d4d6"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":738,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:01Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":738,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.821644,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:01Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"f7ba448f19526fa9de0f2bdd6f22d4d6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837941,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0MX0.RBtCgWNqfJimLYicud2DYNA2HbExbFzn9ddAQD946VA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f7ba448f19526fa9de0f2bdd6f22d4d6","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8797efe3-5169-4d03-9fc7-0cc876a7f3f3"},"level":"info","message":"Attempting to run experiment","requestID":"f7ba448f19526fa9de0f2bdd6f22d4d6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8797efe3-5169-4d03-9fc7-0cc876a7f3f3"},"level":"info","message":"Attempting to book experiment","requestID":"f7ba448f19526fa9de0f2bdd6f22d4d6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8797efe3-5169-4d03-9fc7-0cc876a7f3f3"},"level":"info","message":"Successfully booked experiment","requestID":"f7ba448f19526fa9de0f2bdd6f22d4d6"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"70154360-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"70159180-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":739,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51158","level":"info","msg":"Received request.","req_id":740,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:01Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":739,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.633356,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c985c344-0eb3-468d-988b-4150e0b9863f","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"70154360-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/c985c344-0eb3-468d-988b-4150e0b9863f","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837941,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0MX0.RBtCgWNqfJimLYicud2DYNA2HbExbFzn9ddAQD946VA"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"70154360-49d8-11ef-9fe8-9113c2c8d024","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51158","level":"info","msg":"Sent response.","req_id":740,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.533597,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"70159180-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837941,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0MX0.RBtCgWNqfJimLYicud2DYNA2HbExbFzn9ddAQD946VA"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"70159180-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc985c344-0eb3-468d-988b-4150e0b9863f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc985c344-0eb3-468d-988b-4150e0b9863f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:00.692282960Z"}]},"request_id":"d46cc9ad-7558-4660-83f0-5ad0b401b075","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837941.405845} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"70154360-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93051d66-4c3d-4625-ba6e-bb8cd584fbf4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93051d66-4c3d-4625-ba6e-bb8cd584fbf4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:00.754825085Z"}]},"request_id":"79588be7-4c22-4875-bbcf-c517ce7f3cf1","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837941.406579} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"70159180-49d8-11ef-9fe8-9113c2c8d024","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"70154360-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/c985c344-0eb3-468d-988b-4150e0b9863f? 200 14ms","method":"GET","requestID":"70154360-49d8-11ef-9fe8-9113c2c8d024","responseTime":14,"status":200,"url":"/devices/c985c344-0eb3-468d-988b-4150e0b9863f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"70159180-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4? 200 13ms","method":"GET","requestID":"70159180-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8797efe3-5169-4d03-9fc7-0cc876a7f3f3"},"level":"info","message":"Setting up experiment","requestID":"f7ba448f19526fa9de0f2bdd6f22d4d6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8797efe3-5169-4d03-9fc7-0cc876a7f3f3"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"f7ba448f19526fa9de0f2bdd6f22d4d6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8797efe3-5169-4d03-9fc7-0cc876a7f3f3"},"level":"info","message":"Successfully locked booking for experiment","requestID":"f7ba448f19526fa9de0f2bdd6f22d4d6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8797efe3-5169-4d03-9fc7-0cc876a7f3f3"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"f7ba448f19526fa9de0f2bdd6f22d4d6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8797efe3-5169-4d03-9fc7-0cc876a7f3f3"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"f7ba448f19526fa9de0f2bdd6f22d4d6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8797efe3-5169-4d03-9fc7-0cc876a7f3f3"},"level":"info","message":"Attempting to update booking for experiment","requestID":"f7ba448f19526fa9de0f2bdd6f22d4d6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8797efe3-5169-4d03-9fc7-0cc876a7f3f3"},"level":"info","message":"Successfully updated booking for experiment","requestID":"f7ba448f19526fa9de0f2bdd6f22d4d6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8797efe3-5169-4d03-9fc7-0cc876a7f3f3"},"level":"info","message":"Successfully set up experiment","requestID":"f7ba448f19526fa9de0f2bdd6f22d4d6"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"701df5f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"701e4410-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"701e6b20-49d8-11ef-9fe8-9113c2c8d024"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8797efe3-5169-4d03-9fc7-0cc876a7f3f3"},"level":"info","message":"Successfully running experiment","requestID":"f7ba448f19526fa9de0f2bdd6f22d4d6"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":741,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:01Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":741,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.158716,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51158","level":"info","msg":"Received request.","req_id":742,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c985c344-0eb3-468d-988b-4150e0b9863f","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"701df5f0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/c985c344-0eb3-468d-988b-4150e0b9863f","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837941,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0MX0.RBtCgWNqfJimLYicud2DYNA2HbExbFzn9ddAQD946VA"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"701df5f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51158","level":"info","msg":"Sent response.","req_id":742,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.135676,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:01Z"} authorization-1 | {"client_addr":"127.0.0.1:48396","level":"info","msg":"Received request.","req_id":743,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"701e4410-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837941,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0MX0.RBtCgWNqfJimLYicud2DYNA2HbExbFzn9ddAQD946VA"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"701e4410-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc985c344-0eb3-468d-988b-4150e0b9863f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"23560cc3-04fe-4533-ac06-cb506eee3e5c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837941.4695015} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc985c344-0eb3-468d-988b-4150e0b9863f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc985c344-0eb3-468d-988b-4150e0b9863f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:00.692282960Z"}]},"request_id":"2529f31b-afe6-4234-8a47-41a18b91e856","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837941.4710746} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93051d66-4c3d-4625-ba6e-bb8cd584fbf4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93051d66-4c3d-4625-ba6e-bb8cd584fbf4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:00.754825085Z"}]},"request_id":"d238dbe0-51af-4c07-94a9-720fea3180f0","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837941.4729156} authorization-1 | {"client_addr":"127.0.0.1:48396","level":"info","msg":"Sent response.","req_id":743,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":6.258537,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c985c344-0eb3-468d-988b-4150e0b9863f","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"701e6b20-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c985c344-0eb3-468d-988b-4150e0b9863f","object_type":"device","rebac_allow":false,"scope_allow":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":"701e6b20-49d8-11ef-9fe8-9113c2c8d024","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"701df5f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"701e4410-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"701e6b20-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/c985c344-0eb3-468d-988b-4150e0b9863f/signaling 200 23ms","method":"POST","requestID":"701e6b20-49d8-11ef-9fe8-9113c2c8d024","responseTime":23,"status":200,"url":"/devices/c985c344-0eb3-468d-988b-4150e0b9863f/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"701df5f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/c985c344-0eb3-468d-988b-4150e0b9863f? 200 27ms","method":"GET","requestID":"701df5f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":27,"status":200,"url":"/devices/c985c344-0eb3-468d-988b-4150e0b9863f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"701e4410-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4? 200 26ms","method":"GET","requestID":"701e4410-49d8-11ef-9fe8-9113c2c8d024","responseTime":26,"status":200,"url":"/devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"702262c0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8797efe3-5169-4d03-9fc7-0cc876a7f3f3#owner@http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8797efe3-5169-4d03-9fc7-0cc876a7f3f3","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"b1243259-d82c-4b10-8b4a-d6cb053e4047","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837941.4861822} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"766a11da-6baa-466c-9712-fd12c3f57558","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837941.4866626} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7022d7f0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":744,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:01Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"f7ba448f19526fa9de0f2bdd6f22d4d6","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93051d66-4c3d-4625-ba6e-bb8cd584fbf4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a98887f2-1e58-4be3-ae52-8dcb120da081","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837941.4902847} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":744,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.245092,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51158","level":"info","msg":"Received request.","req_id":745,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"702262c0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4","object_type":"device","rebac_allow":false,"scope_allow":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":"702262c0-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc985c344-0eb3-468d-988b-4150e0b9863f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7b6ccdc4-0d5a-424a-b5ca-5889da32d900","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837941.494121} authorization-1 | {"client_addr":"127.0.0.1:51158","level":"info","msg":"Sent response.","req_id":745,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.477764,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c985c344-0eb3-468d-988b-4150e0b9863f","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"7022d7f0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c985c344-0eb3-468d-988b-4150e0b9863f","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":"702262c0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"7022d7f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4/signaling 200 13ms","method":"POST","requestID":"702262c0-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/8797efe3-5169-4d03-9fc7-0cc876a7f3f3","user":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"f7ba448f19526fa9de0f2bdd6f22d4d6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7022d7f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/c985c344-0eb3-468d-988b-4150e0b9863f/signaling 200 12ms","method":"POST","requestID":"7022d7f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":12,"status":200,"url":"/devices/c985c344-0eb3-468d-988b-4150e0b9863f/signaling"} gateway-1 | {"time_local":"24/Jul/2024:16:19:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1219","request_time":"0.142","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f7ba448f19526fa9de0f2bdd6f22d4d6"} experiment-1 | {"level":"info","message":"POST /experiments? 201 138ms","method":"POST","requestID":"f7ba448f19526fa9de0f2bdd6f22d4d6","responseTime":138,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7024fad0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":746,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:01Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0MX0.RBtCgWNqfJimLYicud2DYNA2HbExbFzn9ddAQD946VA","level":"info","message":"auth send jwt","requestID":"81c19654b0eb63f2929103bec9de6f99"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"81c19654b0eb63f2929103bec9de6f99","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"81c19654b0eb63f2929103bec9de6f99"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93051d66-4c3d-4625-ba6e-bb8cd584fbf4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ddc0e3a5-2497-4392-8647-e967606fe891","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837941.5057225} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":746,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.335258,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"7024fad0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7024fad0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51158","level":"info","msg":"Received request.","req_id":747,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51158","level":"info","msg":"Sent response.","req_id":747,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.718982,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:01Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7024fad0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4/signaling 200 8ms","method":"POST","requestID":"7024fad0-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c985c344-0eb3-468d-988b-4150e0b9863f","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"81c19654b0eb63f2929103bec9de6f99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/c985c344-0eb3-468d-988b-4150e0b9863f","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837941,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0MX0.RBtCgWNqfJimLYicud2DYNA2HbExbFzn9ddAQD946VA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"81c19654b0eb63f2929103bec9de6f99","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8797efe3-5169-4d03-9fc7-0cc876a7f3f3"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"f7ba448f19526fa9de0f2bdd6f22d4d6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8797efe3-5169-4d03-9fc7-0cc876a7f3f3"},"level":"info","message":"Building connection plan","requestID":"f7ba448f19526fa9de0f2bdd6f22d4d6"} 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":"86eb43b0-2217-4a82-84e8-476e3f6100cd"},{"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":"479da688-80f2-408e-9132-369ddb00a50a"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"7926ec33-d39b-4ac4-8d44-02a3bcec80f3"}]},"level":"info","message":"Built pairwise service configurations","requestID":"f7ba448f19526fa9de0f2bdd6f22d4d6"} experiment-1 | {"data":{"connectionPlan":[{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/c985c344-0eb3-468d-988b-4150e0b9863f"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"f7ba448f19526fa9de0f2bdd6f22d4d6"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"7026a880-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc985c344-0eb3-468d-988b-4150e0b9863f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc985c344-0eb3-468d-988b-4150e0b9863f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:00.692282960Z"}]},"request_id":"e9035e35-3da6-4f06-bdcb-28f98b36e96e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837941.5131946} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"81c19654b0eb63f2929103bec9de6f99","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":748,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:01Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":748,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.696772,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:01Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"7026a880-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837941,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0MX0.RBtCgWNqfJimLYicud2DYNA2HbExbFzn9ddAQD946VA"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"7026a880-49d8-11ef-9fe8-9113c2c8d024","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"81c19654b0eb63f2929103bec9de6f99"} device-1 | {"level":"info","message":"GET /devices/c985c344-0eb3-468d-988b-4150e0b9863f? 200 14ms","method":"GET","requestID":"81c19654b0eb63f2929103bec9de6f99","responseTime":14,"status":200,"url":"/devices/c985c344-0eb3-468d-988b-4150e0b9863f?"} gateway-1 | {"time_local":"24/Jul/2024:16:19:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c985c344-0eb3-468d-988b-4150e0b9863f? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"81c19654b0eb63f2929103bec9de6f99"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0MX0.RBtCgWNqfJimLYicud2DYNA2HbExbFzn9ddAQD946VA","level":"info","message":"auth send jwt","requestID":"aea49372a731155058ed9a06aeb9581b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"aea49372a731155058ed9a06aeb9581b","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","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%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"835d8412-b1a2-4ee7-b50a-8cd11bd1d277","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837941.5247033} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"aea49372a731155058ed9a06aeb9581b"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6c7ee790-1c18-419d-875d-85b1b1598514","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837941.5249598} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"7026a880-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":749,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:01Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":749,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.777011,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"aea49372a731155058ed9a06aeb9581b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837941,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0MX0.RBtCgWNqfJimLYicud2DYNA2HbExbFzn9ddAQD946VA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"aea49372a731155058ed9a06aeb9581b","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93051d66-4c3d-4625-ba6e-bb8cd584fbf4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93051d66-4c3d-4625-ba6e-bb8cd584fbf4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:00.754825085Z"}]},"request_id":"a1b9a609-d7b6-4306-a6fb-fa53e7b908a6","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837941.5319188} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"aea49372a731155058ed9a06aeb9581b","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"7026a880-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"7026a880-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/4c3e45f6-b2e9-4255-978c-f46435516747'","requestID":"7026a880-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/4c3e45f6-b2e9-4255-978c-f46435516747'","requestID":"7026a880-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"7026a880-49d8-11ef-9fe8-9113c2c8d024"} 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":"7026a880-49d8-11ef-9fe8-9113c2c8d024","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":"getDevicesByDeviceId succeeded","requestID":"aea49372a731155058ed9a06aeb9581b"} device-1 | {"level":"info","message":"GET /devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4? 200 15ms","method":"GET","requestID":"aea49372a731155058ed9a06aeb9581b","responseTime":15,"status":200,"url":"/devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4?"} gateway-1 | {"time_local":"24/Jul/2024:16:19:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"aea49372a731155058ed9a06aeb9581b"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"7026a880-49d8-11ef-9fe8-9113c2c8d024"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8797efe3-5169-4d03-9fc7-0cc876a7f3f3"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"f7ba448f19526fa9de0f2bdd6f22d4d6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"702ee5e0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":750,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:01Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc985c344-0eb3-468d-988b-4150e0b9863f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3587a069-4311-4964-abde-f3413ae7200b","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837941.570325} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":750,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.457943,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c985c344-0eb3-468d-988b-4150e0b9863f","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"702ee5e0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c985c344-0eb3-468d-988b-4150e0b9863f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"702ee5e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"702ee5e0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/c985c344-0eb3-468d-988b-4150e0b9863f/signaling 200 8ms","method":"POST","requestID":"702ee5e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/devices/c985c344-0eb3-468d-988b-4150e0b9863f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"70306c80-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":751,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:01Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93051d66-4c3d-4625-ba6e-bb8cd584fbf4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2c6f3768-0794-49dd-b187-71fbcc96f5f8","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837941.581341} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":751,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.523963,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"70306c80-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4","object_type":"device","rebac_allow":false,"scope_allow":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":"70306c80-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"70306c80-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4/signaling 200 9ms","method":"POST","requestID":"70306c80-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4/signaling"} device-1 | {"device":"c985c344-0eb3-468d-988b-4150e0b9863f","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"4c3e45f6-b2e9-4255-978c-f46435516747","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"93051d66-4c3d-4625-ba6e-bb8cd584fbf4","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"4c3e45f6-b2e9-4255-978c-f46435516747","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"93051d66-4c3d-4625-ba6e-bb8cd584fbf4","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"93051d66-4c3d-4625-ba6e-bb8cd584fbf4","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"93051d66-4c3d-4625-ba6e-bb8cd584fbf4","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"93051d66-4c3d-4625-ba6e-bb8cd584fbf4","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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/4c3e45f6-b2e9-4255-978c-f46435516747' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4c3e45f6-b2e9-4255-978c-f46435516747","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"256086c235516654fce7a0a9c47cd0fa","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"256086c235516654fce7a0a9c47cd0fa","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/c985c344-0eb3-468d-988b-4150e0b9863f"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/4c3e45f6-b2e9-4255-978c-f46435516747"}}},"level":"info","message":"received a callback","requestID":"256086c235516654fce7a0a9c47cd0fa"} device-1 | {"device":"c985c344-0eb3-468d-988b-4150e0b9863f","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c985c344-0eb3-468d-988b-4150e0b9863f","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c985c344-0eb3-468d-988b-4150e0b9863f","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"256086c235516654fce7a0a9c47cd0fa","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:19: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.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"256086c235516654fce7a0a9c47cd0fa"} device-1 | {"device":"93051d66-4c3d-4625-ba6e-bb8cd584fbf4","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"4c3e45f6-b2e9-4255-978c-f46435516747","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"c985c344-0eb3-468d-988b-4150e0b9863f","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"93051d66-4c3d-4625-ba6e-bb8cd584fbf4","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c985c344-0eb3-468d-988b-4150e0b9863f","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"4c3e45f6-b2e9-4255-978c-f46435516747","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/4c3e45f6-b2e9-4255-978c-f46435516747' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4c3e45f6-b2e9-4255-978c-f46435516747","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c9ab6499f7aa3cd5ade9d7b7da6a28d2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c9ab6499f7aa3cd5ade9d7b7da6a28d2","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c985c344-0eb3-468d-988b-4150e0b9863f"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/4c3e45f6-b2e9-4255-978c-f46435516747"}}},"level":"info","message":"received a callback","requestID":"c9ab6499f7aa3cd5ade9d7b7da6a28d2"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"716edff0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":752,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:03Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4c3e45f6-b2e9-4255-978c-f46435516747","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9b96cb7d-41bb-4ced-a0e1-8dba6d790963","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837943.6688845} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":752,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.82455,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/4c3e45f6-b2e9-4255-978c-f46435516747","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"716edff0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/4c3e45f6-b2e9-4255-978c-f46435516747","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":"716edff0-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"716edff0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /peerconnections/4c3e45f6-b2e9-4255-978c-f46435516747 200 11ms","method":"GET","requestID":"716edff0-49d8-11ef-9fe8-9113c2c8d024","responseTime":11,"status":200,"url":"/peerconnections/4c3e45f6-b2e9-4255-978c-f46435516747"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 52ms","method":"POST","requestID":"c9ab6499f7aa3cd5ade9d7b7da6a28d2","responseTime":52,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:19: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.056","http_referrer":"","http_user_agent":"node-fetch","requestID":"c9ab6499f7aa3cd5ade9d7b7da6a28d2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7175bdc0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":753,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:03Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93051d66-4c3d-4625-ba6e-bb8cd584fbf4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ab055dda-e374-4990-9eef-340edb731b28","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837943.7152488} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":753,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.611751,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"7175bdc0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4","object_type":"device","rebac_allow":false,"scope_allow":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":"7175bdc0-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7175bdc0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4/signaling 200 14ms","method":"POST","requestID":"7175bdc0-49d8-11ef-9fe8-9113c2c8d024","responseTime":14,"status":200,"url":"/devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"717855d0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":754,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:03Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc985c344-0eb3-468d-988b-4150e0b9863f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6e0c57bf-494d-465f-bed9-91a0c69b5f08","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837943.7339852} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":754,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":6.80067,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c985c344-0eb3-468d-988b-4150e0b9863f","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"717855d0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c985c344-0eb3-468d-988b-4150e0b9863f","object_type":"device","rebac_allow":false,"scope_allow":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":"717855d0-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"717855d0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/c985c344-0eb3-468d-988b-4150e0b9863f/signaling 200 18ms","method":"POST","requestID":"717855d0-49d8-11ef-9fe8-9113c2c8d024","responseTime":18,"status":200,"url":"/devices/c985c344-0eb3-468d-988b-4150e0b9863f/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0M30.7hHY14zMkLnWVPIwruGu8rnkPNyai7HIvPAMDoqmxuA","level":"info","message":"auth send jwt","requestID":"2b28a207da35d7bc0510fa44cf030624"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2b28a207da35d7bc0510fa44cf030624","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/8797efe3-5169-4d03-9fc7-0cc876a7f3f3","requestID":"2b28a207da35d7bc0510fa44cf030624"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":755,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:03Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":755,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.265843,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8797efe3-5169-4d03-9fc7-0cc876a7f3f3","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"2b28a207da35d7bc0510fa44cf030624","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/8797efe3-5169-4d03-9fc7-0cc876a7f3f3","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837943,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0M30.7hHY14zMkLnWVPIwruGu8rnkPNyai7HIvPAMDoqmxuA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2b28a207da35d7bc0510fa44cf030624","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/8797efe3-5169-4d03-9fc7-0cc876a7f3f3","requestID":"2b28a207da35d7bc0510fa44cf030624"} gateway-1 | {"time_local":"24/Jul/2024:16:19:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/8797efe3-5169-4d03-9fc7-0cc876a7f3f3 HTTP/1.1","status": "200","body_bytes_sent":"1292","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2b28a207da35d7bc0510fa44cf030624"} experiment-1 | {"level":"info","message":"GET /experiments/8797efe3-5169-4d03-9fc7-0cc876a7f3f3 200 15ms","method":"GET","requestID":"2b28a207da35d7bc0510fa44cf030624","responseTime":15,"status":200,"url":"/experiments/8797efe3-5169-4d03-9fc7-0cc876a7f3f3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0M30.7hHY14zMkLnWVPIwruGu8rnkPNyai7HIvPAMDoqmxuA","level":"info","message":"auth send jwt","requestID":"f22d92887e65bbb22761a5354a9a2ef2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f22d92887e65bbb22761a5354a9a2ef2","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/8797efe3-5169-4d03-9fc7-0cc876a7f3f3","requestID":"f22d92887e65bbb22761a5354a9a2ef2"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":756,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:03Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":756,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.404182,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:03Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8797efe3-5169-4d03-9fc7-0cc876a7f3f3","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"f22d92887e65bbb22761a5354a9a2ef2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/8797efe3-5169-4d03-9fc7-0cc876a7f3f3","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837943,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0M30.7hHY14zMkLnWVPIwruGu8rnkPNyai7HIvPAMDoqmxuA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f22d92887e65bbb22761a5354a9a2ef2","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8797efe3-5169-4d03-9fc7-0cc876a7f3f3"},"level":"info","message":"Attempting to finish experiment","requestID":"f22d92887e65bbb22761a5354a9a2ef2"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"718267f0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":757,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:03Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":757,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.940341,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:03Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/4c3e45f6-b2e9-4255-978c-f46435516747","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"718267f0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:http://localhost/peerconnections/4c3e45f6-b2e9-4255-978c-f46435516747","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837943,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0M30.7hHY14zMkLnWVPIwruGu8rnkPNyai7HIvPAMDoqmxuA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"718267f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"device":"c985c344-0eb3-468d-988b-4150e0b9863f","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c985c344-0eb3-468d-988b-4150e0b9863f","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c985c344-0eb3-468d-988b-4150e0b9863f","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"93051d66-4c3d-4625-ba6e-bb8cd584fbf4","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"93051d66-4c3d-4625-ba6e-bb8cd584fbf4","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"93051d66-4c3d-4625-ba6e-bb8cd584fbf4","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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/4c3e45f6-b2e9-4255-978c-f46435516747' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/4c3e45f6-b2e9-4255-978c-f46435516747' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4c3e45f6-b2e9-4255-978c-f46435516747","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7fd22c5a09ebff332b73ad7100baad98","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"7fd22c5a09ebff332b73ad7100baad98","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a9abdef3df6a2d5f9fe3b68f20391c3d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/c985c344-0eb3-468d-988b-4150e0b9863f"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/4c3e45f6-b2e9-4255-978c-f46435516747"}}},"level":"info","message":"received a callback","requestID":"7fd22c5a09ebff332b73ad7100baad98"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4c3e45f6-b2e9-4255-978c-f46435516747': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4c3e45f6-b2e9-4255-978c-f46435516747","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"74840d3e-6d37-49b1-8b0b-77e745f3150e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837943.8146894} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a9abdef3df6a2d5f9fe3b68f20391c3d","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e64f5ea7-8bdf-4166-93e7-d06d9ed707f7","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837943.815131} 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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/c985c344-0eb3-468d-988b-4150e0b9863f"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/4c3e45f6-b2e9-4255-978c-f46435516747"}}},"level":"info","message":"received a callback","requestID":"a9abdef3df6a2d5f9fe3b68f20391c3d"} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"718267f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":12,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"4c3e45f6-b2e9-4255-978c-f46435516747","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"718267f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"DELETE /peerconnections/4c3e45f6-b2e9-4255-978c-f46435516747 204 42ms","method":"DELETE","requestID":"718267f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":42,"status":204,"url":"/peerconnections/4c3e45f6-b2e9-4255-978c-f46435516747"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8797efe3-5169-4d03-9fc7-0cc876a7f3f3"},"level":"info","message":"Successfully finished experiment","requestID":"f22d92887e65bbb22761a5354a9a2ef2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"718c5300-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":758,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:03Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93051d66-4c3d-4625-ba6e-bb8cd584fbf4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d1798908-b35c-4f5f-8372-6c1ae757dc2f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837943.863381} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":758,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.629553,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"718c5300-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4","object_type":"device","rebac_allow":false,"scope_allow":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":"718c5300-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"718c5300-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4/signaling 200 14ms","method":"POST","requestID":"718c5300-49d8-11ef-9fe8-9113c2c8d024","responseTime":14,"status":200,"url":"/devices/93051d66-4c3d-4625-ba6e-bb8cd584fbf4/signaling"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8797efe3-5169-4d03-9fc7-0cc876a7f3f3': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8797efe3-5169-4d03-9fc7-0cc876a7f3f3","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"7ce422f5-3699-4d3e-b664-04788e548115","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837943.872591} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"718f1220-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"75690be5-e3b9-4c75-b542-58d0a6aea33f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837943.873139} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"f22d92887e65bbb22761a5354a9a2ef2","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":759,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:03Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc985c344-0eb3-468d-988b-4150e0b9863f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9484a39c-3ab3-4fbf-bd18-7145fcf4181f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837943.8806434} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":759,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.887998,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c985c344-0eb3-468d-988b-4150e0b9863f","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"718f1220-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c985c344-0eb3-468d-988b-4150e0b9863f","object_type":"device","rebac_allow":false,"scope_allow":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":"718f1220-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"718f1220-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/c985c344-0eb3-468d-988b-4150e0b9863f/signaling 200 13ms","method":"POST","requestID":"718f1220-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/devices/c985c344-0eb3-468d-988b-4150e0b9863f/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/8797efe3-5169-4d03-9fc7-0cc876a7f3f3","requestID":"f22d92887e65bbb22761a5354a9a2ef2"} gateway-1 | {"time_local":"24/Jul/2024:16:19:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/8797efe3-5169-4d03-9fc7-0cc876a7f3f3 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.172","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f22d92887e65bbb22761a5354a9a2ef2"} gateway-1 | {"time_local":"24/Jul/2024:16:19:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2709","request_time":"2.644","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"8f1a364ac35f83afead6bc89aef20fbb"} gateway-1 | {"time_local":"24/Jul/2024:16:19:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2707","request_time":"2.656","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"7e7fd742aea5312ed14f0f5506b8b9b2"} experiment-1 | {"level":"info","message":"DELETE /experiments/8797efe3-5169-4d03-9fc7-0cc876a7f3f3 204 170ms","method":"DELETE","requestID":"f22d92887e65bbb22761a5354a9a2ef2","responseTime":170,"status":204,"url":"/experiments/8797efe3-5169-4d03-9fc7-0cc876a7f3f3"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 134ms","method":"POST","requestID":"7fd22c5a09ebff332b73ad7100baad98","responseTime":134,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:19: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.138","http_referrer":"","http_user_agent":"node-fetch","requestID":"7fd22c5a09ebff332b73ad7100baad98"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 133ms","method":"POST","requestID":"a9abdef3df6a2d5f9fe3b68f20391c3d","responseTime":133,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:19: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.139","http_referrer":"","http_user_agent":"node-fetch","requestID":"a9abdef3df6a2d5f9fe3b68f20391c3d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0M30.7hHY14zMkLnWVPIwruGu8rnkPNyai7HIvPAMDoqmxuA","level":"info","message":"auth send jwt","requestID":"557351003cc561408b2477be7654182f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"557351003cc561408b2477be7654182f","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/93051d66-4c3d-4625-ba6e-bb8cd584fbf4' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"557351003cc561408b2477be7654182f"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":760,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:03Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":760,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.254841,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"557351003cc561408b2477be7654182f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837943,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0M30.7hHY14zMkLnWVPIwruGu8rnkPNyai7HIvPAMDoqmxuA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"557351003cc561408b2477be7654182f","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/c985c344-0eb3-468d-988b-4150e0b9863f' 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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0d30e9f2-1f55-4841-ad82-034dfd8dccf0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"994919f6-1cc6-45c5-bfd7-6385aa23e0d8","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837943.9792163} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"557351003cc561408b2477be7654182f","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a56c4d56-f2d3-4990-b1a8-7fb52ef0987c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837943.9852204} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"557351003cc561408b2477be7654182f","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0d30e9f2-1f55-4841-ad82-034dfd8dccf0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"a8a53c67-6191-49b1-8c62-9345ff1508cb","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837943.996289} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ae979baf-941b-4243-9aad-73666f878384","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837943.9964032} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"557351003cc561408b2477be7654182f","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0d30e9f2-1f55-4841-ad82-034dfd8dccf0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0d30e9f2-1f55-4841-ad82-034dfd8dccf0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:03.996250700Z"}]},"request_id":"29c03154-2c8f-4010-bf6e-bab1fc07cd48","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837944.0019} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"557351003cc561408b2477be7654182f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"557351003cc561408b2477be7654182f"} gateway-1 | {"time_local":"24/Jul/2024:16:19:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.058","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"557351003cc561408b2477be7654182f"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"557351003cc561408b2477be7654182f","responseTime":50,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0NH0.bAnM_MHfsWJDhWSN8sqRdSzzL93Du3dIP4bbkC36gmE","level":"info","message":"auth send jwt","requestID":"97e8eb0b78be79e2bfed5e91c9901475"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"97e8eb0b78be79e2bfed5e91c9901475","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"97e8eb0b78be79e2bfed5e91c9901475"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":761,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:04Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":761,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.839955,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"97e8eb0b78be79e2bfed5e91c9901475","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837944,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0NH0.bAnM_MHfsWJDhWSN8sqRdSzzL93Du3dIP4bbkC36gmE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"97e8eb0b78be79e2bfed5e91c9901475","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7463cd4-7424-4743-8089-e3b4634ac9b7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2f700976-2f94-47a3-89ac-8d44e3d72dad","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837944.0275142} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"97e8eb0b78be79e2bfed5e91c9901475","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e995fbe0-b97f-4203-9933-b3d7498af8a2","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837944.0323358} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"97e8eb0b78be79e2bfed5e91c9901475","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7463cd4-7424-4743-8089-e3b4634ac9b7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"e7a3e1c3-2f39-43b9-b4b4-122ec402e2ba","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837944.0481734} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"13dbfa13-d610-46a2-bd83-37f541da6775","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837944.048354} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"97e8eb0b78be79e2bfed5e91c9901475","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7463cd4-7424-4743-8089-e3b4634ac9b7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7463cd4-7424-4743-8089-e3b4634ac9b7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:04.048133513Z"}]},"request_id":"929953e8-e5b9-40eb-ae37-18eba6fed4a0","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837944.0531232} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"97e8eb0b78be79e2bfed5e91c9901475","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"97e8eb0b78be79e2bfed5e91c9901475"} gateway-1 | {"time_local":"24/Jul/2024:16:19:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"97e8eb0b78be79e2bfed5e91c9901475"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"97e8eb0b78be79e2bfed5e91c9901475","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0NH0.bAnM_MHfsWJDhWSN8sqRdSzzL93Du3dIP4bbkC36gmE","level":"info","message":"auth send jwt","requestID":"28b5b3a369a28317db1ccb6865481ccd"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"28b5b3a369a28317db1ccb6865481ccd","responseTime":8,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0NH0.bAnM_MHfsWJDhWSN8sqRdSzzL93Du3dIP4bbkC36gmE","level":"info","message":"auth send jwt","requestID":"c08bb6fb74f7a35269aa0775391e4671"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"c08bb6fb74f7a35269aa0775391e4671","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"28b5b3a369a28317db1ccb6865481ccd"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"c08bb6fb74f7a35269aa0775391e4671"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":762,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:04Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":762,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.118806,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:04Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b7463cd4-7424-4743-8089-e3b4634ac9b7","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"28b5b3a369a28317db1ccb6865481ccd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/b7463cd4-7424-4743-8089-e3b4634ac9b7","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837944,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0NH0.bAnM_MHfsWJDhWSN8sqRdSzzL93Du3dIP4bbkC36gmE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"28b5b3a369a28317db1ccb6865481ccd","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51158","level":"info","msg":"Received request.","req_id":763,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51158","level":"info","msg":"Sent response.","req_id":763,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.733477,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:04Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"c08bb6fb74f7a35269aa0775391e4671","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837944,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0NH0.bAnM_MHfsWJDhWSN8sqRdSzzL93Du3dIP4bbkC36gmE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c08bb6fb74f7a35269aa0775391e4671","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7463cd4-7424-4743-8089-e3b4634ac9b7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7463cd4-7424-4743-8089-e3b4634ac9b7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:04.048133513Z"}]},"request_id":"1b466d39-c02f-4489-b797-c323a7f96a03","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837944.5417845} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"28b5b3a369a28317db1ccb6865481ccd","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0d30e9f2-1f55-4841-ad82-034dfd8dccf0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0d30e9f2-1f55-4841-ad82-034dfd8dccf0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:03.996250700Z"}]},"request_id":"ba3ece7b-6953-43c4-ade3-5158eb5f0159","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837944.542552} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c08bb6fb74f7a35269aa0775391e4671","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fa88432a-f6fc-4c1e-aa51-61fb2af15f15","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837944.5474155} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"28b5b3a369a28317db1ccb6865481ccd","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"288432bd-5069-41f6-8886-147febb2bba1","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837944.5489323} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"c08bb6fb74f7a35269aa0775391e4671","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0d30e9f2-1f55-4841-ad82-034dfd8dccf0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0d30e9f2-1f55-4841-ad82-034dfd8dccf0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:03.996250700Z"}]},"request_id":"11515298-83f6-4a1f-96c9-1ab079b30dfd","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837944.5524104} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c08bb6fb74f7a35269aa0775391e4671","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"c08bb6fb74f7a35269aa0775391e4671"} device-1 | {"level":"info","message":"PATCH /devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0 200 22ms","method":"PATCH","requestID":"c08bb6fb74f7a35269aa0775391e4671","responseTime":22,"status":200,"url":"/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0"} gateway-1 | {"time_local":"24/Jul/2024:16:19:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.033","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"c08bb6fb74f7a35269aa0775391e4671"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0NH0.bAnM_MHfsWJDhWSN8sqRdSzzL93Du3dIP4bbkC36gmE","level":"info","message":"auth send jwt","requestID":"ce581fab9f74f53c1ed7dc8627bd56a5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ce581fab9f74f53c1ed7dc8627bd56a5","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"ce581fab9f74f53c1ed7dc8627bd56a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7463cd4-7424-4743-8089-e3b4634ac9b7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7463cd4-7424-4743-8089-e3b4634ac9b7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:04.048133513Z"}]},"request_id":"2a51c5dc-1096-4939-8b78-20dce35d51f4","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837944.5627446} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"28b5b3a369a28317db1ccb6865481ccd","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":764,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:04Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":764,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.984066,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:04Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"28b5b3a369a28317db1ccb6865481ccd"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"ce581fab9f74f53c1ed7dc8627bd56a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837944,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0NH0.bAnM_MHfsWJDhWSN8sqRdSzzL93Du3dIP4bbkC36gmE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ce581fab9f74f53c1ed7dc8627bd56a5","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"24/Jul/2024:16:19:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/b7463cd4-7424-4743-8089-e3b4634ac9b7 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.044","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"28b5b3a369a28317db1ccb6865481ccd"} device-1 | {"level":"info","message":"PATCH /devices/b7463cd4-7424-4743-8089-e3b4634ac9b7 200 34ms","method":"PATCH","requestID":"28b5b3a369a28317db1ccb6865481ccd","responseTime":34,"status":200,"url":"/devices/b7463cd4-7424-4743-8089-e3b4634ac9b7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0NH0.bAnM_MHfsWJDhWSN8sqRdSzzL93Du3dIP4bbkC36gmE","level":"info","message":"auth send jwt","requestID":"582ff7246e4e508699ca3a08902f07dc"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"582ff7246e4e508699ca3a08902f07dc","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"582ff7246e4e508699ca3a08902f07dc"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":765,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:04Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":765,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.701263,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:04Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b7463cd4-7424-4743-8089-e3b4634ac9b7","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"582ff7246e4e508699ca3a08902f07dc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/b7463cd4-7424-4743-8089-e3b4634ac9b7","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837944,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0NH0.bAnM_MHfsWJDhWSN8sqRdSzzL93Du3dIP4bbkC36gmE"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"582ff7246e4e508699ca3a08902f07dc","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"ce581fab9f74f53c1ed7dc8627bd56a5"} gateway-1 | {"time_local":"24/Jul/2024:16:19:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.020","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"ce581fab9f74f53c1ed7dc8627bd56a5"} device-1 | {"level":"info","message":"POST /devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0/websocket 200 15ms","method":"POST","requestID":"ce581fab9f74f53c1ed7dc8627bd56a5","responseTime":15,"status":200,"url":"/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"582ff7246e4e508699ca3a08902f07dc"} device-1 | {"level":"info","message":"POST /devices/b7463cd4-7424-4743-8089-e3b4634ac9b7/websocket 200 14ms","method":"POST","requestID":"582ff7246e4e508699ca3a08902f07dc","responseTime":14,"status":200,"url":"/devices/b7463cd4-7424-4743-8089-e3b4634ac9b7/websocket"} gateway-1 | {"time_local":"24/Jul/2024:16:19:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b7463cd4-7424-4743-8089-e3b4634ac9b7/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.018","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"582ff7246e4e508699ca3a08902f07dc"} device-1 | {"level":"info","message":"device 'http://localhost/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b7463cd4-7424-4743-8089-e3b4634ac9b7' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0NH0.bAnM_MHfsWJDhWSN8sqRdSzzL93Du3dIP4bbkC36gmE","level":"info","message":"auth send jwt","requestID":"ca1490208f997df88831828372814146"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ca1490208f997df88831828372814146","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ca1490208f997df88831828372814146"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":766,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:04Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":766,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.068475,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"ca1490208f997df88831828372814146","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837944,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0NH0.bAnM_MHfsWJDhWSN8sqRdSzzL93Du3dIP4bbkC36gmE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ca1490208f997df88831828372814146","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0d30e9f2-1f55-4841-ad82-034dfd8dccf0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0d30e9f2-1f55-4841-ad82-034dfd8dccf0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:03.996250700Z"}]},"request_id":"cfbe6ac2-abbe-45b8-a8ca-b77ad36b2553","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837944.6213014} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ca1490208f997df88831828372814146","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ca1490208f997df88831828372814146"} gateway-1 | {"time_local":"24/Jul/2024:16:19:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ca1490208f997df88831828372814146"} device-1 | {"level":"info","message":"GET /devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0? 200 11ms","method":"GET","requestID":"ca1490208f997df88831828372814146","responseTime":11,"status":200,"url":"/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0NH0.bAnM_MHfsWJDhWSN8sqRdSzzL93Du3dIP4bbkC36gmE","level":"info","message":"auth send jwt","requestID":"952f97b3e44944f58530d6627a3850df"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"952f97b3e44944f58530d6627a3850df","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"952f97b3e44944f58530d6627a3850df"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":767,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:04Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":767,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.974002,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b7463cd4-7424-4743-8089-e3b4634ac9b7","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"952f97b3e44944f58530d6627a3850df","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/b7463cd4-7424-4743-8089-e3b4634ac9b7","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837944,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0NH0.bAnM_MHfsWJDhWSN8sqRdSzzL93Du3dIP4bbkC36gmE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"952f97b3e44944f58530d6627a3850df","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7463cd4-7424-4743-8089-e3b4634ac9b7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7463cd4-7424-4743-8089-e3b4634ac9b7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:04.048133513Z"}]},"request_id":"cf8e898a-1937-43e2-87df-82ec4ab4aa17","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837944.638134} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"952f97b3e44944f58530d6627a3850df","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"952f97b3e44944f58530d6627a3850df"} gateway-1 | {"time_local":"24/Jul/2024:16:19:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b7463cd4-7424-4743-8089-e3b4634ac9b7? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"952f97b3e44944f58530d6627a3850df"} device-1 | {"level":"info","message":"GET /devices/b7463cd4-7424-4743-8089-e3b4634ac9b7? 200 11ms","method":"GET","requestID":"952f97b3e44944f58530d6627a3850df","responseTime":11,"status":200,"url":"/devices/b7463cd4-7424-4743-8089-e3b4634ac9b7?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0NH0.bAnM_MHfsWJDhWSN8sqRdSzzL93Du3dIP4bbkC36gmE","level":"info","message":"auth send jwt","requestID":"87cc31517210dcaf71ef4d2d4b9dc962"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"87cc31517210dcaf71ef4d2d4b9dc962","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"87cc31517210dcaf71ef4d2d4b9dc962"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":768,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:04Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":768,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.219215,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"87cc31517210dcaf71ef4d2d4b9dc962","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837944,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0NH0.bAnM_MHfsWJDhWSN8sqRdSzzL93Du3dIP4bbkC36gmE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"87cc31517210dcaf71ef4d2d4b9dc962","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/caabdfd7-dbd2-4a9e-b8f3-7ab05c018504"},"level":"info","message":"Attempting to run experiment","requestID":"87cc31517210dcaf71ef4d2d4b9dc962"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/caabdfd7-dbd2-4a9e-b8f3-7ab05c018504"},"level":"info","message":"Attempting to book experiment","requestID":"87cc31517210dcaf71ef4d2d4b9dc962"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/caabdfd7-dbd2-4a9e-b8f3-7ab05c018504"},"level":"info","message":"Successfully booked experiment","requestID":"87cc31517210dcaf71ef4d2d4b9dc962"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"720bbc30-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"720c0a50-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":769,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51158","level":"info","msg":"Received request.","req_id":770,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:04Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":769,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.25878,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"720bbc30-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837944,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0NH0.bAnM_MHfsWJDhWSN8sqRdSzzL93Du3dIP4bbkC36gmE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"720bbc30-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51158","level":"info","msg":"Sent response.","req_id":770,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.925121,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b7463cd4-7424-4743-8089-e3b4634ac9b7","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"720c0a50-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/b7463cd4-7424-4743-8089-e3b4634ac9b7","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837944,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0NH0.bAnM_MHfsWJDhWSN8sqRdSzzL93Du3dIP4bbkC36gmE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"720c0a50-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0d30e9f2-1f55-4841-ad82-034dfd8dccf0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0d30e9f2-1f55-4841-ad82-034dfd8dccf0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:03.996250700Z"}]},"request_id":"0ebedacf-1b38-41dd-a0e3-eba195f7d524","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837944.7018595} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"720bbc30-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7463cd4-7424-4743-8089-e3b4634ac9b7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7463cd4-7424-4743-8089-e3b4634ac9b7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:04.048133513Z"}]},"request_id":"589fd8bc-406b-4c32-8771-26cb3529ce69","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837944.7038112} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"720c0a50-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"720bbc30-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0? 200 19ms","method":"GET","requestID":"720bbc30-49d8-11ef-9fe8-9113c2c8d024","responseTime":19,"status":200,"url":"/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"720c0a50-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/b7463cd4-7424-4743-8089-e3b4634ac9b7? 200 18ms","method":"GET","requestID":"720c0a50-49d8-11ef-9fe8-9113c2c8d024","responseTime":18,"status":200,"url":"/devices/b7463cd4-7424-4743-8089-e3b4634ac9b7?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/caabdfd7-dbd2-4a9e-b8f3-7ab05c018504"},"level":"info","message":"Setting up experiment","requestID":"87cc31517210dcaf71ef4d2d4b9dc962"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/caabdfd7-dbd2-4a9e-b8f3-7ab05c018504"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"87cc31517210dcaf71ef4d2d4b9dc962"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/caabdfd7-dbd2-4a9e-b8f3-7ab05c018504"},"level":"info","message":"Successfully locked booking for experiment","requestID":"87cc31517210dcaf71ef4d2d4b9dc962"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/caabdfd7-dbd2-4a9e-b8f3-7ab05c018504"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"87cc31517210dcaf71ef4d2d4b9dc962"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/caabdfd7-dbd2-4a9e-b8f3-7ab05c018504"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"87cc31517210dcaf71ef4d2d4b9dc962"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/caabdfd7-dbd2-4a9e-b8f3-7ab05c018504"},"level":"info","message":"Attempting to update booking for experiment","requestID":"87cc31517210dcaf71ef4d2d4b9dc962"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/caabdfd7-dbd2-4a9e-b8f3-7ab05c018504"},"level":"info","message":"Successfully updated booking for experiment","requestID":"87cc31517210dcaf71ef4d2d4b9dc962"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/caabdfd7-dbd2-4a9e-b8f3-7ab05c018504"},"level":"info","message":"Successfully set up experiment","requestID":"87cc31517210dcaf71ef4d2d4b9dc962"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"72158030-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7215ce50-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7215f560-49d8-11ef-9fe8-9113c2c8d024"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/caabdfd7-dbd2-4a9e-b8f3-7ab05c018504"},"level":"info","message":"Successfully running experiment","requestID":"87cc31517210dcaf71ef4d2d4b9dc962"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":771,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:04Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":771,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.141955,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51158","level":"info","msg":"Received request.","req_id":772,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"72158030-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837944,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0NH0.bAnM_MHfsWJDhWSN8sqRdSzzL93Du3dIP4bbkC36gmE"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"72158030-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51158","level":"info","msg":"Sent response.","req_id":772,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.690222,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:04Z"} authorization-1 | {"client_addr":"127.0.0.1:48396","level":"info","msg":"Received request.","req_id":773,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b7463cd4-7424-4743-8089-e3b4634ac9b7","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"7215ce50-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/b7463cd4-7424-4743-8089-e3b4634ac9b7","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837944,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0NH0.bAnM_MHfsWJDhWSN8sqRdSzzL93Du3dIP4bbkC36gmE"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"7215ce50-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48396","level":"info","msg":"Sent response.","req_id":773,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.410496,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:04Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0d30e9f2-1f55-4841-ad82-034dfd8dccf0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"65a29fcd-2fd9-484b-be84-a71f88b58f40","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837944.7654343} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"7215f560-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0","object_type":"device","rebac_allow":false,"scope_allow":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":"7215f560-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0d30e9f2-1f55-4841-ad82-034dfd8dccf0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0d30e9f2-1f55-4841-ad82-034dfd8dccf0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:03.996250700Z"}]},"request_id":"de9aca76-55ec-42c8-b5b0-687d04a3ef5e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837944.7688572} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7215f560-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"72158030-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7463cd4-7424-4743-8089-e3b4634ac9b7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7463cd4-7424-4743-8089-e3b4634ac9b7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:04.048133513Z"}]},"request_id":"77ad7fae-df55-4f7c-bd4e-0b4aac785123","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837944.7714548} device-1 | {"level":"info","message":"POST /devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0/signaling 200 13ms","method":"POST","requestID":"7215f560-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7215ce50-49d8-11ef-9fe8-9113c2c8d024","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"72186660-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"72158030-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":774,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:04Z"} device-1 | {"level":"info","message":"GET /devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0? 200 21ms","method":"GET","requestID":"72158030-49d8-11ef-9fe8-9113c2c8d024","responseTime":21,"status":200,"url":"/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7215ce50-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/b7463cd4-7424-4743-8089-e3b4634ac9b7? 200 20ms","method":"GET","requestID":"7215ce50-49d8-11ef-9fe8-9113c2c8d024","responseTime":20,"status":200,"url":"/devices/b7463cd4-7424-4743-8089-e3b4634ac9b7?"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7463cd4-7424-4743-8089-e3b4634ac9b7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1c0af578-61f0-43c7-810b-656e90fc96d6","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837944.7784185} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":774,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.690444,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b7463cd4-7424-4743-8089-e3b4634ac9b7","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"72186660-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b7463cd4-7424-4743-8089-e3b4634ac9b7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"72186660-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"721950c0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":775,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:04Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"72186660-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/b7463cd4-7424-4743-8089-e3b4634ac9b7/signaling 200 9ms","method":"POST","requestID":"72186660-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/devices/b7463cd4-7424-4743-8089-e3b4634ac9b7/signaling"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0d30e9f2-1f55-4841-ad82-034dfd8dccf0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e79ec9ef-595a-4013-a863-32c275f74768","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837944.7851083} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":775,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.235239,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"721950c0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"721950c0-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"721950c0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0/signaling 200 10ms","method":"POST","requestID":"721950c0-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"721b2580-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcaabdfd7-dbd2-4a9e-b8f3-7ab05c018504#owner@http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcaabdfd7-dbd2-4a9e-b8f3-7ab05c018504","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"0199fad3-ce5a-40e2-a068-b54c08fe8686","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837944.7955327} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f1d436c3-662e-409a-b0c8-1756600bb762","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837944.7957873} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":776,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:04Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 33ms","method":"POST","requestID":"87cc31517210dcaf71ef4d2d4b9dc962","responseTime":33,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7463cd4-7424-4743-8089-e3b4634ac9b7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"386ef181-5a53-436d-940b-d469ad5d6503","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837944.7978182} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":776,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.28382,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b7463cd4-7424-4743-8089-e3b4634ac9b7","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"721b2580-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b7463cd4-7424-4743-8089-e3b4634ac9b7","object_type":"device","rebac_allow":false,"scope_allow":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":"721b2580-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"721b2580-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/b7463cd4-7424-4743-8089-e3b4634ac9b7/signaling 200 10ms","method":"POST","requestID":"721b2580-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/devices/b7463cd4-7424-4743-8089-e3b4634ac9b7/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/caabdfd7-dbd2-4a9e-b8f3-7ab05c018504"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"87cc31517210dcaf71ef4d2d4b9dc962"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/caabdfd7-dbd2-4a9e-b8f3-7ab05c018504"},"level":"info","message":"Building connection plan","requestID":"87cc31517210dcaf71ef4d2d4b9dc962"} 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":"cc84c61a-622c-4638-b341-2b4efd844c46"},{"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":"1cccc50c-ca95-4d55-88ce-44546f2e5e58"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"265ff903-e094-4568-adc0-936a738620dc"}]},"level":"info","message":"Built pairwise service configurations","requestID":"87cc31517210dcaf71ef4d2d4b9dc962"} experiment-1 | {"data":{"connectionPlan":[{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/b7463cd4-7424-4743-8089-e3b4634ac9b7"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"87cc31517210dcaf71ef4d2d4b9dc962"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"721d2150-49d8-11ef-9fe8-9113c2c8d024"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/caabdfd7-dbd2-4a9e-b8f3-7ab05c018504","user":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"87cc31517210dcaf71ef4d2d4b9dc962"} experiment-1 | {"level":"info","message":"POST /experiments? 201 159ms","method":"POST","requestID":"87cc31517210dcaf71ef4d2d4b9dc962","responseTime":159,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"24/Jul/2024:16:19:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1219","request_time":"0.163","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"87cc31517210dcaf71ef4d2d4b9dc962"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":777,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:04Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":777,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.684846,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"721d2150-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837944,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0NH0.bAnM_MHfsWJDhWSN8sqRdSzzL93Du3dIP4bbkC36gmE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"721d2150-49d8-11ef-9fe8-9113c2c8d024","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0NH0.bAnM_MHfsWJDhWSN8sqRdSzzL93Du3dIP4bbkC36gmE","level":"info","message":"auth send jwt","requestID":"037524317999850d0d5fd91b1eecaf7c"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"037524317999850d0d5fd91b1eecaf7c","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"037524317999850d0d5fd91b1eecaf7c"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":778,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:04Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":778,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.865667,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"037524317999850d0d5fd91b1eecaf7c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837944,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0NH0.bAnM_MHfsWJDhWSN8sqRdSzzL93Du3dIP4bbkC36gmE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"037524317999850d0d5fd91b1eecaf7c","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0d30e9f2-1f55-4841-ad82-034dfd8dccf0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0d30e9f2-1f55-4841-ad82-034dfd8dccf0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:03.996250700Z"}]},"request_id":"eccb3ded-5fe3-4259-ba2b-7f240214a5e6","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837944.8191254} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"037524317999850d0d5fd91b1eecaf7c","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","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%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"abc5c005-8b7b-4832-ab8a-d01aa7d3b6a3","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837944.8201187} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8eec2493-b07c-4d2e-8f0d-2309edf0e8c1","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837944.820626} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"721d2150-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"037524317999850d0d5fd91b1eecaf7c"} gateway-1 | {"time_local":"24/Jul/2024:16:19:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"037524317999850d0d5fd91b1eecaf7c"} device-1 | {"level":"info","message":"GET /devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0? 200 12ms","method":"GET","requestID":"037524317999850d0d5fd91b1eecaf7c","responseTime":12,"status":200,"url":"/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0NH0.bAnM_MHfsWJDhWSN8sqRdSzzL93Du3dIP4bbkC36gmE","level":"info","message":"auth send jwt","requestID":"e097c6c90cb6fe6befc7635a40c380f7"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"e097c6c90cb6fe6befc7635a40c380f7","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e097c6c90cb6fe6befc7635a40c380f7"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":779,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:04Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":779,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.647398,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b7463cd4-7424-4743-8089-e3b4634ac9b7","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"e097c6c90cb6fe6befc7635a40c380f7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/b7463cd4-7424-4743-8089-e3b4634ac9b7","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837944,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0NH0.bAnM_MHfsWJDhWSN8sqRdSzzL93Du3dIP4bbkC36gmE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e097c6c90cb6fe6befc7635a40c380f7","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7463cd4-7424-4743-8089-e3b4634ac9b7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7463cd4-7424-4743-8089-e3b4634ac9b7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:04.048133513Z"}]},"request_id":"4b3df19e-8dd5-4b56-8be7-74d4c007e1d6","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837944.8371751} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e097c6c90cb6fe6befc7635a40c380f7","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"721d2150-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"721d2150-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/76807d07-fa80-4325-88c9-f2a45e65e7b4'","requestID":"721d2150-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/76807d07-fa80-4325-88c9-f2a45e65e7b4'","requestID":"721d2150-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"721d2150-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 40ms","method":"POST","requestID":"721d2150-49d8-11ef-9fe8-9113c2c8d024","responseTime":40,"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":"e097c6c90cb6fe6befc7635a40c380f7"} gateway-1 | {"time_local":"24/Jul/2024:16:19:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b7463cd4-7424-4743-8089-e3b4634ac9b7? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e097c6c90cb6fe6befc7635a40c380f7"} device-1 | {"level":"info","message":"GET /devices/b7463cd4-7424-4743-8089-e3b4634ac9b7? 200 16ms","method":"GET","requestID":"e097c6c90cb6fe6befc7635a40c380f7","responseTime":16,"status":200,"url":"/devices/b7463cd4-7424-4743-8089-e3b4634ac9b7?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"721d2150-49d8-11ef-9fe8-9113c2c8d024"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/caabdfd7-dbd2-4a9e-b8f3-7ab05c018504"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"87cc31517210dcaf71ef4d2d4b9dc962"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7227a8a0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":780,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:04Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0d30e9f2-1f55-4841-ad82-034dfd8dccf0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9dfbb834-9100-4e17-883c-5b24a86dce59","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837944.8794816} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":780,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.102202,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"7227a8a0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"7227a8a0-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7227a8a0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0/signaling 200 10ms","method":"POST","requestID":"7227a8a0-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"72297d60-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":781,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:04Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7463cd4-7424-4743-8089-e3b4634ac9b7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4ab44d1c-0fd8-4d29-8c12-712cf0e6bc8d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837944.8923116} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":781,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.55834,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b7463cd4-7424-4743-8089-e3b4634ac9b7","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"72297d60-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b7463cd4-7424-4743-8089-e3b4634ac9b7","object_type":"device","rebac_allow":false,"scope_allow":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":"72297d60-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"72297d60-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/b7463cd4-7424-4743-8089-e3b4634ac9b7/signaling 200 11ms","method":"POST","requestID":"72297d60-49d8-11ef-9fe8-9113c2c8d024","responseTime":11,"status":200,"url":"/devices/b7463cd4-7424-4743-8089-e3b4634ac9b7/signaling"} device-1 | {"device":"0d30e9f2-1f55-4841-ad82-034dfd8dccf0","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"76807d07-fa80-4325-88c9-f2a45e65e7b4","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"b7463cd4-7424-4743-8089-e3b4634ac9b7","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"76807d07-fa80-4325-88c9-f2a45e65e7b4","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"b7463cd4-7424-4743-8089-e3b4634ac9b7","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"b7463cd4-7424-4743-8089-e3b4634ac9b7","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"b7463cd4-7424-4743-8089-e3b4634ac9b7","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"b7463cd4-7424-4743-8089-e3b4634ac9b7","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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/76807d07-fa80-4325-88c9-f2a45e65e7b4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"76807d07-fa80-4325-88c9-f2a45e65e7b4","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2595463088a84375f234f81fc042b7d6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2595463088a84375f234f81fc042b7d6","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/b7463cd4-7424-4743-8089-e3b4634ac9b7"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/76807d07-fa80-4325-88c9-f2a45e65e7b4"}}},"level":"info","message":"received a callback","requestID":"2595463088a84375f234f81fc042b7d6"} device-1 | {"device":"0d30e9f2-1f55-4841-ad82-034dfd8dccf0","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"0d30e9f2-1f55-4841-ad82-034dfd8dccf0","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"0d30e9f2-1f55-4841-ad82-034dfd8dccf0","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"2595463088a84375f234f81fc042b7d6","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:19: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":"2595463088a84375f234f81fc042b7d6"} device-1 | {"data":{"peerconnection":"76807d07-fa80-4325-88c9-f2a45e65e7b4","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"b7463cd4-7424-4743-8089-e3b4634ac9b7","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"0d30e9f2-1f55-4841-ad82-034dfd8dccf0","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"0d30e9f2-1f55-4841-ad82-034dfd8dccf0","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"b7463cd4-7424-4743-8089-e3b4634ac9b7","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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":"76807d07-fa80-4325-88c9-f2a45e65e7b4","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/76807d07-fa80-4325-88c9-f2a45e65e7b4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"76807d07-fa80-4325-88c9-f2a45e65e7b4","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"980c0b594c4701fb47b35e36b8f72984","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"980c0b594c4701fb47b35e36b8f72984","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b7463cd4-7424-4743-8089-e3b4634ac9b7"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/76807d07-fa80-4325-88c9-f2a45e65e7b4"}}},"level":"info","message":"received a callback","requestID":"980c0b594c4701fb47b35e36b8f72984"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"73666a30-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":782,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:06Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F76807d07-fa80-4325-88c9-f2a45e65e7b4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4d7534c2-b873-4fff-a907-a8fbebb96eb2","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837946.9687445} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":782,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.685131,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/76807d07-fa80-4325-88c9-f2a45e65e7b4","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"73666a30-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/76807d07-fa80-4325-88c9-f2a45e65e7b4","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":"73666a30-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"73666a30-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /peerconnections/76807d07-fa80-4325-88c9-f2a45e65e7b4 200 9ms","method":"GET","requestID":"73666a30-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/peerconnections/76807d07-fa80-4325-88c9-f2a45e65e7b4"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 36ms","method":"POST","requestID":"980c0b594c4701fb47b35e36b8f72984","responseTime":36,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:19: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.040","http_referrer":"","http_user_agent":"node-fetch","requestID":"980c0b594c4701fb47b35e36b8f72984"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"736b4c30-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":783,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:06Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7463cd4-7424-4743-8089-e3b4634ac9b7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"718a0494-4da7-454d-b23a-ecd0d60c34e7","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837947.0000973} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":783,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.020387,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:07Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b7463cd4-7424-4743-8089-e3b4634ac9b7","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"736b4c30-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b7463cd4-7424-4743-8089-e3b4634ac9b7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"736b4c30-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"736b4c30-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/b7463cd4-7424-4743-8089-e3b4634ac9b7/signaling 200 9ms","method":"POST","requestID":"736b4c30-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/devices/b7463cd4-7424-4743-8089-e3b4634ac9b7/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"736cf9e0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":784,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:07Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0d30e9f2-1f55-4841-ad82-034dfd8dccf0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"572cabb8-fb0d-49e3-8549-cfc9e18bb1a6","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837947.013132} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":784,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.686407,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:07Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"736cf9e0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0","object_type":"device","rebac_allow":false,"scope_allow":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":"736cf9e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"736cf9e0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0/signaling 200 12ms","method":"POST","requestID":"736cf9e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":12,"status":200,"url":"/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0N30.w9uLUxshHu6l5L-6blVyBuFsVXH6HhKe9Qbj3ptP2q0","level":"info","message":"auth send jwt","requestID":"78fa0317e8073c90664f6346a77b8d1d"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"78fa0317e8073c90664f6346a77b8d1d","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/caabdfd7-dbd2-4a9e-b8f3-7ab05c018504","requestID":"78fa0317e8073c90664f6346a77b8d1d"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":785,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:07Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":785,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.296667,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/caabdfd7-dbd2-4a9e-b8f3-7ab05c018504","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"78fa0317e8073c90664f6346a77b8d1d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/caabdfd7-dbd2-4a9e-b8f3-7ab05c018504","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837947,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0N30.w9uLUxshHu6l5L-6blVyBuFsVXH6HhKe9Qbj3ptP2q0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"78fa0317e8073c90664f6346a77b8d1d","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/caabdfd7-dbd2-4a9e-b8f3-7ab05c018504","requestID":"78fa0317e8073c90664f6346a77b8d1d"} gateway-1 | {"time_local":"24/Jul/2024:16:19:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/caabdfd7-dbd2-4a9e-b8f3-7ab05c018504 HTTP/1.1","status": "200","body_bytes_sent":"1292","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"78fa0317e8073c90664f6346a77b8d1d"} experiment-1 | {"level":"info","message":"GET /experiments/caabdfd7-dbd2-4a9e-b8f3-7ab05c018504 200 15ms","method":"GET","requestID":"78fa0317e8073c90664f6346a77b8d1d","responseTime":15,"status":200,"url":"/experiments/caabdfd7-dbd2-4a9e-b8f3-7ab05c018504"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0N30.w9uLUxshHu6l5L-6blVyBuFsVXH6HhKe9Qbj3ptP2q0","level":"info","message":"auth send jwt","requestID":"8425ce3e8eb6bc785bacdcc4a444aea9"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"8425ce3e8eb6bc785bacdcc4a444aea9","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/caabdfd7-dbd2-4a9e-b8f3-7ab05c018504","requestID":"8425ce3e8eb6bc785bacdcc4a444aea9"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":786,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:07Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":786,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.30054,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:07Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/caabdfd7-dbd2-4a9e-b8f3-7ab05c018504","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"8425ce3e8eb6bc785bacdcc4a444aea9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/caabdfd7-dbd2-4a9e-b8f3-7ab05c018504","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837947,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0N30.w9uLUxshHu6l5L-6blVyBuFsVXH6HhKe9Qbj3ptP2q0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8425ce3e8eb6bc785bacdcc4a444aea9","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/caabdfd7-dbd2-4a9e-b8f3-7ab05c018504"},"level":"info","message":"Attempting to finish experiment","requestID":"8425ce3e8eb6bc785bacdcc4a444aea9"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"737ab580-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":787,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:07Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":787,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.306702,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:07Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/76807d07-fa80-4325-88c9-f2a45e65e7b4","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"737ab580-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:http://localhost/peerconnections/76807d07-fa80-4325-88c9-f2a45e65e7b4","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837947,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0N30.w9uLUxshHu6l5L-6blVyBuFsVXH6HhKe9Qbj3ptP2q0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"737ab580-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"device":"b7463cd4-7424-4743-8089-e3b4634ac9b7","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"b7463cd4-7424-4743-8089-e3b4634ac9b7","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"b7463cd4-7424-4743-8089-e3b4634ac9b7","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"0d30e9f2-1f55-4841-ad82-034dfd8dccf0","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"0d30e9f2-1f55-4841-ad82-034dfd8dccf0","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"0d30e9f2-1f55-4841-ad82-034dfd8dccf0","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","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/76807d07-fa80-4325-88c9-f2a45e65e7b4' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/76807d07-fa80-4325-88c9-f2a45e65e7b4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"76807d07-fa80-4325-88c9-f2a45e65e7b4","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F76807d07-fa80-4325-88c9-f2a45e65e7b4': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F76807d07-fa80-4325-88c9-f2a45e65e7b4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"cc7c22f1-c95d-4b0c-9543-36ae1d89cfd1","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837947.1188407} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7ba1ef48-edf8-458f-b864-653ad63ac05b","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837947.119231} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e12c3008264178844d409b9bb604ef1b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"737ab580-49d8-11ef-9fe8-9113c2c8d024","responseTime":11,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"e12c3008264178844d409b9bb604ef1b","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/b7463cd4-7424-4743-8089-e3b4634ac9b7"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/76807d07-fa80-4325-88c9-f2a45e65e7b4"}}},"level":"info","message":"received a callback","requestID":"e12c3008264178844d409b9bb604ef1b"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"54d972982066419aea8631d1152f461b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"54d972982066419aea8631d1152f461b","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/b7463cd4-7424-4743-8089-e3b4634ac9b7"},{"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/76807d07-fa80-4325-88c9-f2a45e65e7b4"}}},"level":"info","message":"received a callback","requestID":"54d972982066419aea8631d1152f461b"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"737ab580-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"DELETE /peerconnections/76807d07-fa80-4325-88c9-f2a45e65e7b4 204 46ms","method":"DELETE","requestID":"737ab580-49d8-11ef-9fe8-9113c2c8d024","responseTime":46,"status":204,"url":"/peerconnections/76807d07-fa80-4325-88c9-f2a45e65e7b4"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/caabdfd7-dbd2-4a9e-b8f3-7ab05c018504"},"level":"info","message":"Successfully finished experiment","requestID":"8425ce3e8eb6bc785bacdcc4a444aea9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"73853cd0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":788,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:07Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7463cd4-7424-4743-8089-e3b4634ac9b7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f8099fd3-4ca6-495c-95da-0b197f994029","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837947.171733} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":788,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.622436,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:07Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b7463cd4-7424-4743-8089-e3b4634ac9b7","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"73853cd0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b7463cd4-7424-4743-8089-e3b4634ac9b7","object_type":"device","rebac_allow":false,"scope_allow":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":"73853cd0-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"73853cd0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/b7463cd4-7424-4743-8089-e3b4634ac9b7/signaling 200 13ms","method":"POST","requestID":"73853cd0-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/devices/b7463cd4-7424-4743-8089-e3b4634ac9b7/signaling"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcaabdfd7-dbd2-4a9e-b8f3-7ab05c018504': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcaabdfd7-dbd2-4a9e-b8f3-7ab05c018504","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"6767f2a1-ec0a-43d4-a73f-eebf00e8d590","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837947.1807337} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1621358c-e73b-4fa4-a9f8-7268fb454cf4","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837947.1810062} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7387d4e0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"8425ce3e8eb6bc785bacdcc4a444aea9","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":789,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:07Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0d30e9f2-1f55-4841-ad82-034dfd8dccf0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cf082d46-f8d0-409e-b3fa-379e16cf8870","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837947.190869} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":789,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.816862,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:07Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"7387d4e0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0","object_type":"device","rebac_allow":false,"scope_allow":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":"7387d4e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7387d4e0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0/signaling 200 16ms","method":"POST","requestID":"7387d4e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":16,"status":200,"url":"/devices/0d30e9f2-1f55-4841-ad82-034dfd8dccf0/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/caabdfd7-dbd2-4a9e-b8f3-7ab05c018504","requestID":"8425ce3e8eb6bc785bacdcc4a444aea9"} gateway-1 | {"time_local":"24/Jul/2024:16:19:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/caabdfd7-dbd2-4a9e-b8f3-7ab05c018504 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":"8425ce3e8eb6bc785bacdcc4a444aea9"} experiment-1 | {"level":"info","message":"DELETE /experiments/caabdfd7-dbd2-4a9e-b8f3-7ab05c018504 204 172ms","method":"DELETE","requestID":"8425ce3e8eb6bc785bacdcc4a444aea9","responseTime":172,"status":204,"url":"/experiments/caabdfd7-dbd2-4a9e-b8f3-7ab05c018504"} gateway-1 | {"time_local":"24/Jul/2024:16:19:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2709","request_time":"2.674","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"3b4d8eaa3aa6e1fdd5ee78de1b1a6081"} gateway-1 | {"time_local":"24/Jul/2024:16:19:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2707","request_time":"2.666","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"ac083a477a060ddd1467896e1b7266c2"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 132ms","method":"POST","requestID":"e12c3008264178844d409b9bb604ef1b","responseTime":132,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:19: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.137","http_referrer":"","http_user_agent":"node-fetch","requestID":"e12c3008264178844d409b9bb604ef1b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 130ms","method":"POST","requestID":"54d972982066419aea8631d1152f461b","responseTime":130,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:19: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.139","http_referrer":"","http_user_agent":"node-fetch","requestID":"54d972982066419aea8631d1152f461b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0N30.w9uLUxshHu6l5L-6blVyBuFsVXH6HhKe9Qbj3ptP2q0","level":"info","message":"auth send jwt","requestID":"6b46b2f9fc82ebb289c6dda463446ed4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6b46b2f9fc82ebb289c6dda463446ed4","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/b7463cd4-7424-4743-8089-e3b4634ac9b7' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"6b46b2f9fc82ebb289c6dda463446ed4"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":790,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:07Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":790,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.088903,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:07Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6b46b2f9fc82ebb289c6dda463446ed4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837947,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0N30.w9uLUxshHu6l5L-6blVyBuFsVXH6HhKe9Qbj3ptP2q0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6b46b2f9fc82ebb289c6dda463446ed4","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/0d30e9f2-1f55-4841-ad82-034dfd8dccf0' 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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070fc5a5-7ab7-4175-b896-dffc1eb005fc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4ec96a99-d213-4cf9-8ea0-9d1960e1450e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837947.2816377} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6b46b2f9fc82ebb289c6dda463446ed4","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"75ef996d-c7e7-4152-a4af-e72ec434d531","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837947.2878683} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"6b46b2f9fc82ebb289c6dda463446ed4","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070fc5a5-7ab7-4175-b896-dffc1eb005fc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"5d1b95bd-a556-4783-89ee-7168f2b97676","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837947.2985015} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b27f0268-faf8-48da-9a91-1cac48aaa0f7","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837947.2986789} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"6b46b2f9fc82ebb289c6dda463446ed4","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070fc5a5-7ab7-4175-b896-dffc1eb005fc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070fc5a5-7ab7-4175-b896-dffc1eb005fc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:07.298453602Z"}]},"request_id":"6c060cc9-2cab-4f8c-a39e-b55ea7829005","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837947.30413} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6b46b2f9fc82ebb289c6dda463446ed4","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"6b46b2f9fc82ebb289c6dda463446ed4"} gateway-1 | {"time_local":"24/Jul/2024:16:19:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6b46b2f9fc82ebb289c6dda463446ed4"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"6b46b2f9fc82ebb289c6dda463446ed4","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0N30.w9uLUxshHu6l5L-6blVyBuFsVXH6HhKe9Qbj3ptP2q0","level":"info","message":"auth send jwt","requestID":"c79b90e11ef2a3a0fa235b6f8c03f6b9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c79b90e11ef2a3a0fa235b6f8c03f6b9","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"c79b90e11ef2a3a0fa235b6f8c03f6b9"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":791,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:07Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":791,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.807541,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:07Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"c79b90e11ef2a3a0fa235b6f8c03f6b9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837947,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0N30.w9uLUxshHu6l5L-6blVyBuFsVXH6HhKe9Qbj3ptP2q0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c79b90e11ef2a3a0fa235b6f8c03f6b9","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F955454a4-13bf-4fce-9668-9f30d4ffcb2b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d03eafbe-4cf3-45e8-ac04-6c7c4b75cd9c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837947.329705} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c79b90e11ef2a3a0fa235b6f8c03f6b9","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2eaa91e1-d888-494a-b93d-c6ab800a1998","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837947.3345904} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"c79b90e11ef2a3a0fa235b6f8c03f6b9","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F955454a4-13bf-4fce-9668-9f30d4ffcb2b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"a235c231-06e5-4540-af8d-5f6934c3dd9a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837947.3522952} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"042b315f-17c0-47a5-a8cd-af80cf5d3962","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837947.3525262} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"c79b90e11ef2a3a0fa235b6f8c03f6b9","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F955454a4-13bf-4fce-9668-9f30d4ffcb2b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F955454a4-13bf-4fce-9668-9f30d4ffcb2b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:07.352258340Z"}]},"request_id":"14295a9e-a971-439c-a589-3d08a76f7cf8","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837947.357485} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c79b90e11ef2a3a0fa235b6f8c03f6b9","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"c79b90e11ef2a3a0fa235b6f8c03f6b9"} gateway-1 | {"time_local":"24/Jul/2024:16:19:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c79b90e11ef2a3a0fa235b6f8c03f6b9"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"c79b90e11ef2a3a0fa235b6f8c03f6b9","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a244303f49a084f51bccbf8b2071eb48","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"a244303f49a084f51bccbf8b2071eb48","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Jul/2024:16:19:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc/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":"a244303f49a084f51bccbf8b2071eb48"} device-1 | {"level":"info","message":"OPTIONS /devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc/websocket 200 1ms","method":"OPTIONS","requestID":"a244303f49a084f51bccbf8b2071eb48","responseTime":1,"status":200,"url":"/devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0OX0.U0dr6wn0xS1HUx9TbEWKRfc3_02m9_k9EIBytD9SI90","level":"info","message":"auth send jwt","requestID":"6874c26377c715d4ad605b3482b8d850"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6874c26377c715d4ad605b3482b8d850","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"6874c26377c715d4ad605b3482b8d850"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":792,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":792,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.284709,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"6874c26377c715d4ad605b3482b8d850","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837949,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0OX0.U0dr6wn0xS1HUx9TbEWKRfc3_02m9_k9EIBytD9SI90"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6874c26377c715d4ad605b3482b8d850","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e9a78a49e30ce01f6f7da781e1e1410b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"e9a78a49e30ce01f6f7da781e1e1410b","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Jul/2024:16:19:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b/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":"e9a78a49e30ce01f6f7da781e1e1410b"} device-1 | {"level":"info","message":"OPTIONS /devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b/websocket 200 1ms","method":"OPTIONS","requestID":"e9a78a49e30ce01f6f7da781e1e1410b","responseTime":1,"status":200,"url":"/devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"6874c26377c715d4ad605b3482b8d850"} device-1 | {"level":"info","message":"POST /devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc/websocket 200 22ms","method":"POST","requestID":"6874c26377c715d4ad605b3482b8d850","responseTime":22,"status":200,"url":"/devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc/websocket"} gateway-1 | {"time_local":"24/Jul/2024:16:19:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc/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":"6874c26377c715d4ad605b3482b8d850"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0OX0.U0dr6wn0xS1HUx9TbEWKRfc3_02m9_k9EIBytD9SI90","level":"info","message":"auth send jwt","requestID":"e2a751179415afbc169e92f0d0c9f2c8"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e2a751179415afbc169e92f0d0c9f2c8","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e2a751179415afbc169e92f0d0c9f2c8"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":793,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":793,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.080813,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"e2a751179415afbc169e92f0d0c9f2c8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837949,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0OX0.U0dr6wn0xS1HUx9TbEWKRfc3_02m9_k9EIBytD9SI90"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e2a751179415afbc169e92f0d0c9f2c8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"device 'http://localhost/devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc' connected"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e2a751179415afbc169e92f0d0c9f2c8"} device-1 | {"level":"info","message":"POST /devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b/websocket 200 22ms","method":"POST","requestID":"e2a751179415afbc169e92f0d0c9f2c8","responseTime":22,"status":200,"url":"/devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b/websocket"} gateway-1 | {"time_local":"24/Jul/2024:16:19:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b/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":"e2a751179415afbc169e92f0d0c9f2c8"} device-1 | {"level":"info","message":"device 'http://localhost/devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0OX0.U0dr6wn0xS1HUx9TbEWKRfc3_02m9_k9EIBytD9SI90","level":"info","message":"auth send jwt","requestID":"e370888afb36ef5b07d96cd424dd2910"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e370888afb36ef5b07d96cd424dd2910","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e370888afb36ef5b07d96cd424dd2910"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":794,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":794,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.951662,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"e370888afb36ef5b07d96cd424dd2910","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837949,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0OX0.U0dr6wn0xS1HUx9TbEWKRfc3_02m9_k9EIBytD9SI90"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e370888afb36ef5b07d96cd424dd2910","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070fc5a5-7ab7-4175-b896-dffc1eb005fc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070fc5a5-7ab7-4175-b896-dffc1eb005fc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:07.298453602Z"}]},"request_id":"61dac729-7372-4864-a972-f098f7d17a37","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837949.390398} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e370888afb36ef5b07d96cd424dd2910","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e370888afb36ef5b07d96cd424dd2910"} gateway-1 | {"time_local":"24/Jul/2024:16:19:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e370888afb36ef5b07d96cd424dd2910"} device-1 | {"level":"info","message":"GET /devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc? 200 12ms","method":"GET","requestID":"e370888afb36ef5b07d96cd424dd2910","responseTime":12,"status":200,"url":"/devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0OX0.U0dr6wn0xS1HUx9TbEWKRfc3_02m9_k9EIBytD9SI90","level":"info","message":"auth send jwt","requestID":"93815df313d27b0571ee8253c1da0368"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"93815df313d27b0571ee8253c1da0368","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"93815df313d27b0571ee8253c1da0368"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":795,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":795,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.880498,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"93815df313d27b0571ee8253c1da0368","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837949,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0OX0.U0dr6wn0xS1HUx9TbEWKRfc3_02m9_k9EIBytD9SI90"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"93815df313d27b0571ee8253c1da0368","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F955454a4-13bf-4fce-9668-9f30d4ffcb2b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F955454a4-13bf-4fce-9668-9f30d4ffcb2b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:07.352258340Z"}]},"request_id":"d0ab2e06-94f1-4d39-802e-8eb846af2a7d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837949.406812} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"93815df313d27b0571ee8253c1da0368","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"93815df313d27b0571ee8253c1da0368"} gateway-1 | {"time_local":"24/Jul/2024:16:19:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"93815df313d27b0571ee8253c1da0368"} device-1 | {"level":"info","message":"GET /devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b? 200 11ms","method":"GET","requestID":"93815df313d27b0571ee8253c1da0368","responseTime":11,"status":200,"url":"/devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0OX0.U0dr6wn0xS1HUx9TbEWKRfc3_02m9_k9EIBytD9SI90","level":"info","message":"auth send jwt","requestID":"0e970f581ad3ede4934e4f2228e85eca"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0e970f581ad3ede4934e4f2228e85eca","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"0e970f581ad3ede4934e4f2228e85eca"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":796,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":796,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.667152,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"0e970f581ad3ede4934e4f2228e85eca","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837949,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0OX0.U0dr6wn0xS1HUx9TbEWKRfc3_02m9_k9EIBytD9SI90"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0e970f581ad3ede4934e4f2228e85eca","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e0ab6dd1-4a11-4dc9-b11c-3e7dfca62955"},"level":"info","message":"Attempting to run experiment","requestID":"0e970f581ad3ede4934e4f2228e85eca"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e0ab6dd1-4a11-4dc9-b11c-3e7dfca62955"},"level":"info","message":"Attempting to book experiment","requestID":"0e970f581ad3ede4934e4f2228e85eca"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e0ab6dd1-4a11-4dc9-b11c-3e7dfca62955"},"level":"info","message":"Successfully booked experiment","requestID":"0e970f581ad3ede4934e4f2228e85eca"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"74e14a60-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"74e17170-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":797,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":797,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.993901,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"74e14a60-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837949,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0OX0.U0dr6wn0xS1HUx9TbEWKRfc3_02m9_k9EIBytD9SI90"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"74e14a60-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39624","level":"info","msg":"Received request.","req_id":798,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"client_addr":"127.0.0.1:39624","level":"info","msg":"Sent response.","req_id":798,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.47518,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"74e17170-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837949,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0OX0.U0dr6wn0xS1HUx9TbEWKRfc3_02m9_k9EIBytD9SI90"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"74e17170-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070fc5a5-7ab7-4175-b896-dffc1eb005fc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070fc5a5-7ab7-4175-b896-dffc1eb005fc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:07.298453602Z"}]},"request_id":"a7669c6d-499e-4c64-9ff5-d88c4a62b45e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837949.456304} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"74e14a60-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F955454a4-13bf-4fce-9668-9f30d4ffcb2b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F955454a4-13bf-4fce-9668-9f30d4ffcb2b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:07.352258340Z"}]},"request_id":"cfc44d17-dafb-40d3-9c30-908d59dbfd1f","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837949.4609473} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"74e14a60-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"74e17170-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc? 200 16ms","method":"GET","requestID":"74e14a60-49d8-11ef-9fe8-9113c2c8d024","responseTime":16,"status":200,"url":"/devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"74e17170-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b? 200 20ms","method":"GET","requestID":"74e17170-49d8-11ef-9fe8-9113c2c8d024","responseTime":20,"status":200,"url":"/devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e0ab6dd1-4a11-4dc9-b11c-3e7dfca62955"},"level":"info","message":"Setting up experiment","requestID":"0e970f581ad3ede4934e4f2228e85eca"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e0ab6dd1-4a11-4dc9-b11c-3e7dfca62955"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"0e970f581ad3ede4934e4f2228e85eca"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e0ab6dd1-4a11-4dc9-b11c-3e7dfca62955"},"level":"info","message":"Successfully locked booking for experiment","requestID":"0e970f581ad3ede4934e4f2228e85eca"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e0ab6dd1-4a11-4dc9-b11c-3e7dfca62955"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"0e970f581ad3ede4934e4f2228e85eca"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e0ab6dd1-4a11-4dc9-b11c-3e7dfca62955"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"0e970f581ad3ede4934e4f2228e85eca"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e0ab6dd1-4a11-4dc9-b11c-3e7dfca62955"},"level":"info","message":"Attempting to update booking for experiment","requestID":"0e970f581ad3ede4934e4f2228e85eca"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e0ab6dd1-4a11-4dc9-b11c-3e7dfca62955"},"level":"info","message":"Successfully updated booking for experiment","requestID":"0e970f581ad3ede4934e4f2228e85eca"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e0ab6dd1-4a11-4dc9-b11c-3e7dfca62955"},"level":"info","message":"Successfully set up experiment","requestID":"0e970f581ad3ede4934e4f2228e85eca"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"74ec1fd0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"74ec6df0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":799,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:09Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"74ecbc10-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":799,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.735932,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:09Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e0ab6dd1-4a11-4dc9-b11c-3e7dfca62955"},"level":"info","message":"Successfully running experiment","requestID":"0e970f581ad3ede4934e4f2228e85eca"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"74ec1fd0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837949,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0OX0.U0dr6wn0xS1HUx9TbEWKRfc3_02m9_k9EIBytD9SI90"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"74ec1fd0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39624","level":"info","msg":"Received request.","req_id":800,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"client_addr":"127.0.0.1:39624","level":"info","msg":"Sent response.","req_id":800,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.850872,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"74ec6df0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837949,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0OX0.U0dr6wn0xS1HUx9TbEWKRfc3_02m9_k9EIBytD9SI90"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"74ec6df0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":801,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070fc5a5-7ab7-4175-b896-dffc1eb005fc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5fb217f3-a7b5-4b88-b6c9-3ab149758cab","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837949.5282629} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F955454a4-13bf-4fce-9668-9f30d4ffcb2b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F955454a4-13bf-4fce-9668-9f30d4ffcb2b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:07.352258340Z"}]},"request_id":"b2d0763b-0aed-4984-9651-c80614afe899","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837949.5307074} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":801,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.319302,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"74ecbc10-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc","object_type":"device","rebac_allow":false,"scope_allow":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":"74ecbc10-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"74ec6df0-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070fc5a5-7ab7-4175-b896-dffc1eb005fc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070fc5a5-7ab7-4175-b896-dffc1eb005fc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:07.298453602Z"}]},"request_id":"13014c7f-a195-4180-9f37-78ec04382f8a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837949.5321035} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"74ec1fd0-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"74ec6df0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b? 200 19ms","method":"GET","requestID":"74ec6df0-49d8-11ef-9fe8-9113c2c8d024","responseTime":19,"status":200,"url":"/devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"74ecbc10-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc/signaling 200 17ms","method":"POST","requestID":"74ecbc10-49d8-11ef-9fe8-9113c2c8d024","responseTime":17,"status":200,"url":"/devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"74ec1fd0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc? 200 22ms","method":"GET","requestID":"74ec1fd0-49d8-11ef-9fe8-9113c2c8d024","responseTime":22,"status":200,"url":"/devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"74efa240-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"74eff060-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe0ab6dd1-4a11-4dc9-b11c-3e7dfca62955#owner@http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe0ab6dd1-4a11-4dc9-b11c-3e7dfca62955","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"d2ab55f5-53d7-428f-8612-704cbf8ebf73","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837949.543656} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"de599b2a-87d1-449d-8bf8-a8e3bd36e378","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837949.5442944} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F955454a4-13bf-4fce-9668-9f30d4ffcb2b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ded3547b-3da9-44ef-91d3-b2c4368324cd","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837949.5462968} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":802,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"client_addr":"127.0.0.1:39624","level":"info","msg":"Received request.","req_id":803,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":802,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.337543,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"0e970f581ad3ede4934e4f2228e85eca","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"74efa240-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"74efa240-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070fc5a5-7ab7-4175-b896-dffc1eb005fc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f9efa886-826a-4583-a8d4-23a96472c965","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837949.547531} authorization-1 | {"client_addr":"127.0.0.1:39624","level":"info","msg":"Sent response.","req_id":803,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.315639,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"74eff060-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"74eff060-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"74efa240-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b/signaling 200 14ms","method":"POST","requestID":"74efa240-49d8-11ef-9fe8-9113c2c8d024","responseTime":14,"status":200,"url":"/devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/e0ab6dd1-4a11-4dc9-b11c-3e7dfca62955","user":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"0e970f581ad3ede4934e4f2228e85eca"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"74eff060-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc/signaling 200 13ms","method":"POST","requestID":"74eff060-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc/signaling"} gateway-1 | {"time_local":"24/Jul/2024:16:19:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"807","request_time":"0.143","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0e970f581ad3ede4934e4f2228e85eca"} experiment-1 | {"level":"info","message":"POST /experiments? 201 140ms","method":"POST","requestID":"0e970f581ad3ede4934e4f2228e85eca","responseTime":140,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"74f28870-49d8-11ef-9fe8-9113c2c8d024"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0OX0.U0dr6wn0xS1HUx9TbEWKRfc3_02m9_k9EIBytD9SI90","level":"info","message":"auth send jwt","requestID":"78597d11a0018e36c0ad58d864c0a1f4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"78597d11a0018e36c0ad58d864c0a1f4","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"78597d11a0018e36c0ad58d864c0a1f4"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":804,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F955454a4-13bf-4fce-9668-9f30d4ffcb2b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4daf66f7-5c4f-4606-8b72-deab74a16200","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837949.5643916} authorization-1 | {"client_addr":"127.0.0.1:39624","level":"info","msg":"Received request.","req_id":805,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":804,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.398076,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"client_addr":"127.0.0.1:39624","level":"info","msg":"Sent response.","req_id":805,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.763795,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"74f28870-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b","object_type":"device","rebac_allow":false,"scope_allow":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":"74f28870-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"78597d11a0018e36c0ad58d864c0a1f4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837949,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0OX0.U0dr6wn0xS1HUx9TbEWKRfc3_02m9_k9EIBytD9SI90"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"78597d11a0018e36c0ad58d864c0a1f4","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"74f28870-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b/signaling 200 13ms","method":"POST","requestID":"74f28870-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b/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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070fc5a5-7ab7-4175-b896-dffc1eb005fc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070fc5a5-7ab7-4175-b896-dffc1eb005fc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:07.298453602Z"}]},"request_id":"cee0960b-873e-458a-89c6-df4721b0cafe","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837949.5731013} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e0ab6dd1-4a11-4dc9-b11c-3e7dfca62955"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"0e970f581ad3ede4934e4f2228e85eca"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e0ab6dd1-4a11-4dc9-b11c-3e7dfca62955"},"level":"info","message":"Building connection plan","requestID":"0e970f581ad3ede4934e4f2228e85eca"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"fec550ec-bf65-48db-8c56-94efbf3841f0"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"dbe86033-3470-4504-a621-63d00207c0a2"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"ca5c68b3-9aa8-4105-a827-5f7a3c8ff671"}]},"level":"info","message":"Built pairwise service configurations","requestID":"0e970f581ad3ede4934e4f2228e85eca"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"0e970f581ad3ede4934e4f2228e85eca"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"78597d11a0018e36c0ad58d864c0a1f4","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"74f4f970-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"78597d11a0018e36c0ad58d864c0a1f4"} gateway-1 | {"time_local":"24/Jul/2024:16:19:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"78597d11a0018e36c0ad58d864c0a1f4"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":806,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:09Z"} device-1 | {"level":"info","message":"GET /devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc? 200 16ms","method":"GET","requestID":"78597d11a0018e36c0ad58d864c0a1f4","responseTime":16,"status":200,"url":"/devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc?"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":806,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.816278,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"74f4f970-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837949,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0OX0.U0dr6wn0xS1HUx9TbEWKRfc3_02m9_k9EIBytD9SI90"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"74f4f970-49d8-11ef-9fe8-9113c2c8d024","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0OX0.U0dr6wn0xS1HUx9TbEWKRfc3_02m9_k9EIBytD9SI90","level":"info","message":"auth send jwt","requestID":"389f0d5614ee1a37eff4fae3331d0fc5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"389f0d5614ee1a37eff4fae3331d0fc5","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"389f0d5614ee1a37eff4fae3331d0fc5"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":807,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":807,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.642006,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"389f0d5614ee1a37eff4fae3331d0fc5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837949,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0OX0.U0dr6wn0xS1HUx9TbEWKRfc3_02m9_k9EIBytD9SI90"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"389f0d5614ee1a37eff4fae3331d0fc5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","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%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"89d2423d-592d-4c89-a97f-bd9fd04310e2","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837949.5869882} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5d25df1e-b578-4ac1-8573-600d090d6421","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837949.5871534} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"74f4f970-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F955454a4-13bf-4fce-9668-9f30d4ffcb2b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F955454a4-13bf-4fce-9668-9f30d4ffcb2b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:07.352258340Z"}]},"request_id":"64b69f03-fa87-41dc-8c22-74df28afedb4","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837949.5905974} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"389f0d5614ee1a37eff4fae3331d0fc5","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"74f4f970-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"74f4f970-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/b0fd031a-5572-4949-824f-9934d141f157'","requestID":"74f4f970-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/b0fd031a-5572-4949-824f-9934d141f157'","requestID":"74f4f970-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"74f4f970-49d8-11ef-9fe8-9113c2c8d024"} 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":"74f4f970-49d8-11ef-9fe8-9113c2c8d024","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":"getDevicesByDeviceId succeeded","requestID":"389f0d5614ee1a37eff4fae3331d0fc5"} device-1 | {"level":"info","message":"GET /devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b? 200 21ms","method":"GET","requestID":"389f0d5614ee1a37eff4fae3331d0fc5","responseTime":21,"status":200,"url":"/devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b?"} gateway-1 | {"time_local":"24/Jul/2024:16:19:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"389f0d5614ee1a37eff4fae3331d0fc5"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"74f4f970-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/b0fd031a-5572-4949-824f-9934d141f157","device":"955454a4-13bf-4fce-9668-9f30d4ffcb2b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/b0fd031a-5572-4949-824f-9934d141f157","device":"070fc5a5-7ab7-4175-b896-dffc1eb005fc","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e0ab6dd1-4a11-4dc9-b11c-3e7dfca62955"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"0e970f581ad3ede4934e4f2228e85eca"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"74fd84f0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":808,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070fc5a5-7ab7-4175-b896-dffc1eb005fc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1f3d6c8c-f1f1-4740-ab37-6be5852237b2","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837949.6356304} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":808,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.935142,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"74fd84f0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"74fd84f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"74fd84f0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc/signaling 200 8ms","method":"POST","requestID":"74fd84f0-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"74ff0b90-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":809,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:09Z"} device-1 | {"device":"955454a4-13bf-4fce-9668-9f30d4ffcb2b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F955454a4-13bf-4fce-9668-9f30d4ffcb2b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"75a124ce-0612-4339-85ee-47fdbc5568d8","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837949.6458018} device-1 | {"content":{"canTrickle":true},"device":"955454a4-13bf-4fce-9668-9f30d4ffcb2b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":809,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.597036,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"74ff0b90-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"74ff0b90-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"device":"070fc5a5-7ab7-4175-b896-dffc1eb005fc","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"070fc5a5-7ab7-4175-b896-dffc1eb005fc","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"74ff0b90-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b/signaling 200 11ms","method":"POST","requestID":"74ff0b90-49d8-11ef-9fe8-9113c2c8d024","responseTime":11,"status":200,"url":"/devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 2310823186185360404 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:wDTX\r\na=ice-pwd:JOidyQ7d6tJXitse9g17RsSk\r\na=ice-options:trickle\r\na=fingerprint:sha-256 E7:49:BE:1E:10:7A:8A:CB:C5:C1:68:64:AD:30:19:F5:89:62:16:CA:89:36:F2:5B:35:33:51:A8:92:80:C9:86\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"955454a4-13bf-4fce-9668-9f30d4ffcb2b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 5318164355399263977 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:eSEk\r\na=ice-pwd:EzkkVGAeB+mUo+kQ/V0XAOQR\r\na=ice-options:trickle\r\na=fingerprint:sha-256 DA:06:D6:3F:48:39:1A:5F:71:C1:11:5C:6E:57:F5:9E:20:DB:5C:9B:D3:F6:B6:A7:AC:C4:49:A3:8D:EA:C2:37\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"070fc5a5-7ab7-4175-b896-dffc1eb005fc","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3201417339 1 udp 2113937151 b4ec051b-7aff-43af-aae0-748416785241.local 41403 typ host generation 0 ufrag eSEk network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"070fc5a5-7ab7-4175-b896-dffc1eb005fc","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:771383656 1 udp 1677729535 141.24.211.56 41403 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag eSEk network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"070fc5a5-7ab7-4175-b896-dffc1eb005fc","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/070fc5a5-7ab7-4175-b896-dffc1eb005fc'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc'"} device-1 | {"content":{"candidate":"candidate:4167814416 1 udp 2113937151 c125eaf9-eb64-4ad6-baad-cae59afd3da8.local 41943 typ host generation 0 ufrag wDTX network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"955454a4-13bf-4fce-9668-9f30d4ffcb2b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2085005167 1 udp 1677729535 141.24.211.56 41943 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag wDTX network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"955454a4-13bf-4fce-9668-9f30d4ffcb2b","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/955454a4-13bf-4fce-9668-9f30d4ffcb2b'"} device-1 | {"device":"070fc5a5-7ab7-4175-b896-dffc1eb005fc","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/b0fd031a-5572-4949-824f-9934d141f157' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b0fd031a-5572-4949-824f-9934d141f157","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"89b42fee46f9419ca1edd1aa430840a3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"955454a4-13bf-4fce-9668-9f30d4ffcb2b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"955454a4-13bf-4fce-9668-9f30d4ffcb2b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"89b42fee46f9419ca1edd1aa430840a3","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"955454a4-13bf-4fce-9668-9f30d4ffcb2b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"070fc5a5-7ab7-4175-b896-dffc1eb005fc","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"070fc5a5-7ab7-4175-b896-dffc1eb005fc","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":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/b0fd031a-5572-4949-824f-9934d141f157"}}},"level":"info","message":"received a callback","requestID":"89b42fee46f9419ca1edd1aa430840a3"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"89b42fee46f9419ca1edd1aa430840a3","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:19: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.008","http_referrer":"","http_user_agent":"node-fetch","requestID":"89b42fee46f9419ca1edd1aa430840a3"} device-1 | {"device":"070fc5a5-7ab7-4175-b896-dffc1eb005fc","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"b0fd031a-5572-4949-824f-9934d141f157","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"b0fd031a-5572-4949-824f-9934d141f157","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/b0fd031a-5572-4949-824f-9934d141f157' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b0fd031a-5572-4949-824f-9934d141f157","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ebee63c970660a45e8f4e9d264c8dffb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ebee63c970660a45e8f4e9d264c8dffb","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/b0fd031a-5572-4949-824f-9934d141f157"}}},"level":"info","message":"received a callback","requestID":"ebee63c970660a45e8f4e9d264c8dffb"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"750a0810-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":810,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb0fd031a-5572-4949-824f-9934d141f157","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b368ee7e-508e-49f9-93c0-d50b558a4b9c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837949.7170315} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":810,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.144409,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b0fd031a-5572-4949-824f-9934d141f157","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"750a0810-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/b0fd031a-5572-4949-824f-9934d141f157","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":"750a0810-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"750a0810-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /peerconnections/b0fd031a-5572-4949-824f-9934d141f157 200 7ms","method":"GET","requestID":"750a0810-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/peerconnections/b0fd031a-5572-4949-824f-9934d141f157"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 28ms","method":"POST","requestID":"ebee63c970660a45e8f4e9d264c8dffb","responseTime":28,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:19:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.032","http_referrer":"","http_user_agent":"node-fetch","requestID":"ebee63c970660a45e8f4e9d264c8dffb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"750dd8a0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":811,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070fc5a5-7ab7-4175-b896-dffc1eb005fc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3072aab3-91af-426f-a496-c7cab09c0f52","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837949.7421634} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":811,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.706209,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"750dd8a0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"750dd8a0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"750dd8a0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc/signaling 200 8ms","method":"POST","requestID":"750dd8a0-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"750f5f40-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":812,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F955454a4-13bf-4fce-9668-9f30d4ffcb2b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"028ffd88-332e-4107-8a23-37d1404125c2","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837949.751732} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":812,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.174844,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"750f5f40-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b","object_type":"device","rebac_allow":false,"scope_allow":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":"750f5f40-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"750f5f40-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b/signaling 200 7ms","method":"POST","requestID":"750f5f40-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0OX0.U0dr6wn0xS1HUx9TbEWKRfc3_02m9_k9EIBytD9SI90","level":"info","message":"auth send jwt","requestID":"e2e376c28c6a30dc23465c6560014bfd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e2e376c28c6a30dc23465c6560014bfd","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/e0ab6dd1-4a11-4dc9-b11c-3e7dfca62955","requestID":"e2e376c28c6a30dc23465c6560014bfd"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":813,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":813,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.668058,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/e0ab6dd1-4a11-4dc9-b11c-3e7dfca62955","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"e2e376c28c6a30dc23465c6560014bfd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/e0ab6dd1-4a11-4dc9-b11c-3e7dfca62955","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837949,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0OX0.U0dr6wn0xS1HUx9TbEWKRfc3_02m9_k9EIBytD9SI90"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e2e376c28c6a30dc23465c6560014bfd","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/e0ab6dd1-4a11-4dc9-b11c-3e7dfca62955","requestID":"e2e376c28c6a30dc23465c6560014bfd"} gateway-1 | {"time_local":"24/Jul/2024:16:19:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/e0ab6dd1-4a11-4dc9-b11c-3e7dfca62955 HTTP/1.1","status": "200","body_bytes_sent":"880","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e2e376c28c6a30dc23465c6560014bfd"} experiment-1 | {"level":"info","message":"GET /experiments/e0ab6dd1-4a11-4dc9-b11c-3e7dfca62955 200 10ms","method":"GET","requestID":"e2e376c28c6a30dc23465c6560014bfd","responseTime":10,"status":200,"url":"/experiments/e0ab6dd1-4a11-4dc9-b11c-3e7dfca62955"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0OX0.U0dr6wn0xS1HUx9TbEWKRfc3_02m9_k9EIBytD9SI90","level":"info","message":"auth send jwt","requestID":"a8a5635ab3c1d6233cd4feef784e4811"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a8a5635ab3c1d6233cd4feef784e4811","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/e0ab6dd1-4a11-4dc9-b11c-3e7dfca62955","requestID":"a8a5635ab3c1d6233cd4feef784e4811"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":814,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":814,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.681425,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/e0ab6dd1-4a11-4dc9-b11c-3e7dfca62955","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"a8a5635ab3c1d6233cd4feef784e4811","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/e0ab6dd1-4a11-4dc9-b11c-3e7dfca62955","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837949,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0OX0.U0dr6wn0xS1HUx9TbEWKRfc3_02m9_k9EIBytD9SI90"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a8a5635ab3c1d6233cd4feef784e4811","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e0ab6dd1-4a11-4dc9-b11c-3e7dfca62955"},"level":"info","message":"Attempting to finish experiment","requestID":"a8a5635ab3c1d6233cd4feef784e4811"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"7519e690-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":815,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":815,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.006942,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b0fd031a-5572-4949-824f-9934d141f157","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"7519e690-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:http://localhost/peerconnections/b0fd031a-5572-4949-824f-9934d141f157","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837949,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0OX0.U0dr6wn0xS1HUx9TbEWKRfc3_02m9_k9EIBytD9SI90"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7519e690-49d8-11ef-9fe8-9113c2c8d024","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/b0fd031a-5572-4949-824f-9934d141f157","device":"070fc5a5-7ab7-4175-b896-dffc1eb005fc","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/b0fd031a-5572-4949-824f-9934d141f157","device":"955454a4-13bf-4fce-9668-9f30d4ffcb2b","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/b0fd031a-5572-4949-824f-9934d141f157' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/b0fd031a-5572-4949-824f-9934d141f157' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b0fd031a-5572-4949-824f-9934d141f157","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb0fd031a-5572-4949-824f-9934d141f157': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb0fd031a-5572-4949-824f-9934d141f157","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"9eb1bed7-f808-4c4c-883c-0a3695267084","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837949.8346624} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"967c7827a6e8ccc2a6cfd7a41011ba41","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"967c7827a6e8ccc2a6cfd7a41011ba41","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"34d9802e-6741-47c7-9247-da886117b82d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837949.83526} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d2cd2d0ce6513e6c8ea67365813542f1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/b0fd031a-5572-4949-824f-9934d141f157"}}},"level":"info","message":"received a callback","requestID":"967c7827a6e8ccc2a6cfd7a41011ba41"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d2cd2d0ce6513e6c8ea67365813542f1","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"7519e690-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/b0fd031a-5572-4949-824f-9934d141f157"}}},"level":"info","message":"received a callback","requestID":"d2cd2d0ce6513e6c8ea67365813542f1"} device-1 | {"data":{"peerconnection":"b0fd031a-5572-4949-824f-9934d141f157","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"7519e690-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"DELETE /peerconnections/b0fd031a-5572-4949-824f-9934d141f157 204 36ms","method":"DELETE","requestID":"7519e690-49d8-11ef-9fe8-9113c2c8d024","responseTime":36,"status":204,"url":"/peerconnections/b0fd031a-5572-4949-824f-9934d141f157"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e0ab6dd1-4a11-4dc9-b11c-3e7dfca62955"},"level":"info","message":"Successfully finished experiment","requestID":"a8a5635ab3c1d6233cd4feef784e4811"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7521aec0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":816,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070fc5a5-7ab7-4175-b896-dffc1eb005fc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b49e55b1-b4ec-496f-9ac6-a91bdb7cc351","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837949.8732653} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":816,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.873898,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"7521aec0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc","object_type":"device","rebac_allow":false,"scope_allow":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":"7521aec0-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7521aec0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc/signaling 200 9ms","method":"POST","requestID":"7521aec0-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc/signaling"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe0ab6dd1-4a11-4dc9-b11c-3e7dfca62955': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe0ab6dd1-4a11-4dc9-b11c-3e7dfca62955","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"562ca65a-7bec-4b9b-bcd1-c155e4bbc37b","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837949.8795922} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"77ac924c-8cb7-4649-92ef-7b8d60f0ec16","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837949.8798685} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"75238380-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"a8a5635ab3c1d6233cd4feef784e4811","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":817,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F955454a4-13bf-4fce-9668-9f30d4ffcb2b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2efd5533-1571-4b36-bc59-3c1578f4e982","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837949.8841286} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":817,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.112685,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"75238380-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b","object_type":"device","rebac_allow":false,"scope_allow":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":"75238380-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"75238380-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b/signaling 200 9ms","method":"POST","requestID":"75238380-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/devices/955454a4-13bf-4fce-9668-9f30d4ffcb2b/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/e0ab6dd1-4a11-4dc9-b11c-3e7dfca62955","requestID":"a8a5635ab3c1d6233cd4feef784e4811"} gateway-1 | {"time_local":"24/Jul/2024:16:19:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/e0ab6dd1-4a11-4dc9-b11c-3e7dfca62955 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":"a8a5635ab3c1d6233cd4feef784e4811"} experiment-1 | {"level":"info","message":"DELETE /experiments/e0ab6dd1-4a11-4dc9-b11c-3e7dfca62955 204 135ms","method":"DELETE","requestID":"a8a5635ab3c1d6233cd4feef784e4811","responseTime":135,"status":204,"url":"/experiments/e0ab6dd1-4a11-4dc9-b11c-3e7dfca62955"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 108ms","method":"POST","requestID":"967c7827a6e8ccc2a6cfd7a41011ba41","responseTime":108,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:19: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.111","http_referrer":"","http_user_agent":"node-fetch","requestID":"967c7827a6e8ccc2a6cfd7a41011ba41"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 107ms","method":"POST","requestID":"d2cd2d0ce6513e6c8ea67365813542f1","responseTime":107,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:19: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.112","http_referrer":"","http_user_agent":"node-fetch","requestID":"d2cd2d0ce6513e6c8ea67365813542f1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0OX0.U0dr6wn0xS1HUx9TbEWKRfc3_02m9_k9EIBytD9SI90","level":"info","message":"auth send jwt","requestID":"9b5278a8038dafa86516fee91ec8df1e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9b5278a8038dafa86516fee91ec8df1e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"9b5278a8038dafa86516fee91ec8df1e"} gateway-1 | {"time_local":"24/Jul/2024:16:19:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2646","request_time":"0.588","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"322ddd1c149927ac9d061c74d632ba47"} gateway-1 | {"time_local":"24/Jul/2024:16:19:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2647","request_time":"0.610","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"98b7e9d05b7cc8bcbb42c936855a8eac"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/070fc5a5-7ab7-4175-b896-dffc1eb005fc' closed"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":818,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":818,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.873495,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"9b5278a8038dafa86516fee91ec8df1e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837949,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk0OX0.U0dr6wn0xS1HUx9TbEWKRfc3_02m9_k9EIBytD9SI90"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"9b5278a8038dafa86516fee91ec8df1e","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/955454a4-13bf-4fce-9668-9f30d4ffcb2b' 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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F299fe72a-249f-434e-8de1-3522c2ae186f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7bb37489-3cca-4843-a0a3-64bf0aceaf01","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837949.9778595} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"9b5278a8038dafa86516fee91ec8df1e","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a2cc9d42-aa2b-418a-b150-6d1cdb8155f7","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837949.9819305} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"9b5278a8038dafa86516fee91ec8df1e","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F299fe72a-249f-434e-8de1-3522c2ae186f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"eaf1cfea-cedd-40b6-8512-7fee1ccb33b8","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837949.9912055} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"51ded58d-9ab9-4463-96cf-69cd1ee66797","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837949.991301} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"9b5278a8038dafa86516fee91ec8df1e","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F299fe72a-249f-434e-8de1-3522c2ae186f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F299fe72a-249f-434e-8de1-3522c2ae186f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:09.991173505Z"}]},"request_id":"130089ba-f7f5-46ee-b822-0922e6b0bf2c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837949.9944956} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"9b5278a8038dafa86516fee91ec8df1e","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"9b5278a8038dafa86516fee91ec8df1e"} gateway-1 | {"time_local":"24/Jul/2024:16:19:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"315","request_time":"0.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9b5278a8038dafa86516fee91ec8df1e"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"9b5278a8038dafa86516fee91ec8df1e","responseTime":48,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk1MH0.MiNrti4H81hlFko7wXfBaOZLCiUfIvSMYGqNvNDeLTg","level":"info","message":"auth send jwt","requestID":"046f20d963325d652925e1f31597eeba"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"046f20d963325d652925e1f31597eeba","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"046f20d963325d652925e1f31597eeba"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":819,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:10Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":819,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.963053,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:10Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"046f20d963325d652925e1f31597eeba","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837950,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk1MH0.MiNrti4H81hlFko7wXfBaOZLCiUfIvSMYGqNvNDeLTg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"046f20d963325d652925e1f31597eeba","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8beaf4a-b4db-4dd2-912d-64176938ef93","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"cbfa41e1-57fa-4be8-a940-ca55b62ed97e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837950.0175552} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"046f20d963325d652925e1f31597eeba","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:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7f777ecd-c79c-4637-aa09-7d9a7237dd5a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837950.0211043} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"046f20d963325d652925e1f31597eeba","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8beaf4a-b4db-4dd2-912d-64176938ef93","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"67eb1b39-42dd-47e5-a2b5-876b2bdd6cbf","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837950.0376284} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"598b13a9-b9b3-476e-a8d8-c5db7dfb98ac","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837950.0377426} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"046f20d963325d652925e1f31597eeba","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8beaf4a-b4db-4dd2-912d-64176938ef93","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8beaf4a-b4db-4dd2-912d-64176938ef93","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:10.037604370Z"}]},"request_id":"4ab340cb-9418-4680-99a0-2cd2036db7fa","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837950.0418644} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"046f20d963325d652925e1f31597eeba","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"046f20d963325d652925e1f31597eeba"} gateway-1 | {"time_local":"24/Jul/2024:16:19:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"046f20d963325d652925e1f31597eeba"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"046f20d963325d652925e1f31597eeba","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"563a6c57dbab4ec51d9b244916d600d7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"563a6c57dbab4ec51d9b244916d600d7","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Jul/2024:16:19:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e8beaf4a-b4db-4dd2-912d-64176938ef93/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":"563a6c57dbab4ec51d9b244916d600d7"} device-1 | {"level":"info","message":"OPTIONS /devices/e8beaf4a-b4db-4dd2-912d-64176938ef93/websocket 200 1ms","method":"OPTIONS","requestID":"563a6c57dbab4ec51d9b244916d600d7","responseTime":1,"status":200,"url":"/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk1Mn0.pszHAIOnxOrR9PR9M9Lesz5Gn9LMSSHZTWcS92JUHdo","level":"info","message":"auth send jwt","requestID":"11208ee2baf9710372cef0c2d4ccf27d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"11208ee2baf9710372cef0c2d4ccf27d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"11208ee2baf9710372cef0c2d4ccf27d"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":820,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:12Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":820,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.202062,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:12Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"11208ee2baf9710372cef0c2d4ccf27d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837952,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk1Mn0.pszHAIOnxOrR9PR9M9Lesz5Gn9LMSSHZTWcS92JUHdo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"11208ee2baf9710372cef0c2d4ccf27d","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"11208ee2baf9710372cef0c2d4ccf27d"} device-1 | {"level":"info","message":"POST /devices/e8beaf4a-b4db-4dd2-912d-64176938ef93/websocket 200 22ms","method":"POST","requestID":"11208ee2baf9710372cef0c2d4ccf27d","responseTime":22,"status":200,"url":"/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93/websocket"} gateway-1 | {"time_local":"24/Jul/2024:16:19:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/e8beaf4a-b4db-4dd2-912d-64176938ef93/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":"11208ee2baf9710372cef0c2d4ccf27d"} device-1 | {"level":"info","message":"device 'http://localhost/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk1Mn0.pszHAIOnxOrR9PR9M9Lesz5Gn9LMSSHZTWcS92JUHdo","level":"info","message":"auth send jwt","requestID":"0f4cf93e2c9a6b956f12f99e008b4c3a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0f4cf93e2c9a6b956f12f99e008b4c3a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0f4cf93e2c9a6b956f12f99e008b4c3a"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":821,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:12Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":821,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.195568,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"0f4cf93e2c9a6b956f12f99e008b4c3a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837952,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk1Mn0.pszHAIOnxOrR9PR9M9Lesz5Gn9LMSSHZTWcS92JUHdo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0f4cf93e2c9a6b956f12f99e008b4c3a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8beaf4a-b4db-4dd2-912d-64176938ef93","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8beaf4a-b4db-4dd2-912d-64176938ef93","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:10.037604370Z"}]},"request_id":"fc3a351f-b82b-4cfe-b177-03a83147ff1c","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837952.1127396} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0f4cf93e2c9a6b956f12f99e008b4c3a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0f4cf93e2c9a6b956f12f99e008b4c3a"} gateway-1 | {"time_local":"24/Jul/2024:16:19:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e8beaf4a-b4db-4dd2-912d-64176938ef93? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0f4cf93e2c9a6b956f12f99e008b4c3a"} device-1 | {"level":"info","message":"GET /devices/e8beaf4a-b4db-4dd2-912d-64176938ef93? 200 16ms","method":"GET","requestID":"0f4cf93e2c9a6b956f12f99e008b4c3a","responseTime":16,"status":200,"url":"/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk1Mn0.pszHAIOnxOrR9PR9M9Lesz5Gn9LMSSHZTWcS92JUHdo","level":"info","message":"auth send jwt","requestID":"88291bf2419f23523568b07fc786d095"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"88291bf2419f23523568b07fc786d095","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"88291bf2419f23523568b07fc786d095"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":822,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:12Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":822,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":2.511441,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:12Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"88291bf2419f23523568b07fc786d095","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837952,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk1Mn0.pszHAIOnxOrR9PR9M9Lesz5Gn9LMSSHZTWcS92JUHdo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"88291bf2419f23523568b07fc786d095","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1e78dfa6-51ef-415f-b575-5a4abda70983"},"level":"info","message":"Attempting to run experiment","requestID":"88291bf2419f23523568b07fc786d095"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1e78dfa6-51ef-415f-b575-5a4abda70983"},"level":"info","message":"Attempting to book experiment","requestID":"88291bf2419f23523568b07fc786d095"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1e78dfa6-51ef-415f-b575-5a4abda70983"},"level":"info","message":"Successfully booked experiment","requestID":"88291bf2419f23523568b07fc786d095"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7680c990-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"768117b0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":823,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:12Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":823,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.127826,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:12Z"} authorization-1 | {"client_addr":"127.0.0.1:39624","level":"info","msg":"Received request.","req_id":824,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/299fe72a-249f-434e-8de1-3522c2ae186f","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"7680c990-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/299fe72a-249f-434e-8de1-3522c2ae186f","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837952,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk1Mn0.pszHAIOnxOrR9PR9M9Lesz5Gn9LMSSHZTWcS92JUHdo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7680c990-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39624","level":"info","msg":"Sent response.","req_id":824,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.801859,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"768117b0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837952,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk1Mn0.pszHAIOnxOrR9PR9M9Lesz5Gn9LMSSHZTWcS92JUHdo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"768117b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F299fe72a-249f-434e-8de1-3522c2ae186f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F299fe72a-249f-434e-8de1-3522c2ae186f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:09.991173505Z"}]},"request_id":"4db4a5c6-9339-4336-8de2-aed4e237e8de","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837952.1808844} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"7680c990-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8beaf4a-b4db-4dd2-912d-64176938ef93","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8beaf4a-b4db-4dd2-912d-64176938ef93","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:10.037604370Z"}]},"request_id":"f1d2e571-5ac4-471c-8350-1a759cd67ade","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837952.1828501} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"768117b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7680c990-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/299fe72a-249f-434e-8de1-3522c2ae186f? 200 20ms","method":"GET","requestID":"7680c990-49d8-11ef-9fe8-9113c2c8d024","responseTime":20,"status":200,"url":"/devices/299fe72a-249f-434e-8de1-3522c2ae186f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"768117b0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/e8beaf4a-b4db-4dd2-912d-64176938ef93? 200 20ms","method":"GET","requestID":"768117b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":20,"status":200,"url":"/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1e78dfa6-51ef-415f-b575-5a4abda70983"},"level":"info","message":"Setting up experiment","requestID":"88291bf2419f23523568b07fc786d095"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1e78dfa6-51ef-415f-b575-5a4abda70983"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"88291bf2419f23523568b07fc786d095"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1e78dfa6-51ef-415f-b575-5a4abda70983"},"level":"info","message":"Successfully locked booking for experiment","requestID":"88291bf2419f23523568b07fc786d095"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1e78dfa6-51ef-415f-b575-5a4abda70983"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"88291bf2419f23523568b07fc786d095"} device-1 | {"level":"info","message":"postDevicesByDeviceId called","requestID":"76870b20-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":825,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:12Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":825,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.363738,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:12Z"} authorization-1 | {"action":"instantiate","level":"info","message":"opa_check","object":"device:http://localhost/devices/299fe72a-249f-434e-8de1-3522c2ae186f","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"76870b20-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/299fe72a-249f-434e-8de1-3522c2ae186f","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837952,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk1Mn0.pszHAIOnxOrR9PR9M9Lesz5Gn9LMSSHZTWcS92JUHdo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"76870b20-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F38d1930a-4ac2-478b-9118-0036ac89b42f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"62ee665c-649d-4ff3-a40d-3bb6736bfe9b","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837952.240851} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f9b1d57c-dc0f-44aa-8ad5-38a600f2cbea","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837952.2410798} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"76870b20-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"registering changed-callback for device 'http://localhost/devices/38d1930a-4ac2-478b-9118-0036ac89b42f' to 'http://localhost/callbacks/experiment'","requestID":"76870b20-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postDevicesByDeviceId succeeded","requestID":"76870b20-49d8-11ef-9fe8-9113c2c8d024"} authentication-1 | {"level":"info","message":"POST /token 201 27ms","method":"POST","requestID":"768d4cb0-49d8-11ef-943c-29cf1dfa55db","responseTime":27,"status":201,"url":"/token"} device-1 | {"level":"info","message":"POST /devices/299fe72a-249f-434e-8de1-3522c2ae186f?changedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 75ms","method":"POST","requestID":"76870b20-49d8-11ef-9fe8-9113c2c8d024","responseTime":75,"status":201,"url":"/devices/299fe72a-249f-434e-8de1-3522c2ae186f?changedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1e78dfa6-51ef-415f-b575-5a4abda70983"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"88291bf2419f23523568b07fc786d095"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1e78dfa6-51ef-415f-b575-5a4abda70983"},"level":"info","message":"Attempting to update booking for experiment","requestID":"88291bf2419f23523568b07fc786d095"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1e78dfa6-51ef-415f-b575-5a4abda70983"},"level":"info","message":"Successfully updated booking for experiment","requestID":"88291bf2419f23523568b07fc786d095"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1e78dfa6-51ef-415f-b575-5a4abda70983"},"level":"info","message":"Successfully set up experiment","requestID":"88291bf2419f23523568b07fc786d095"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"769a9320-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"769ae140-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"769b2f60-49d8-11ef-9fe8-9113c2c8d024"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1e78dfa6-51ef-415f-b575-5a4abda70983"},"level":"info","message":"Successfully running experiment","requestID":"88291bf2419f23523568b07fc786d095"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":826,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:12Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":826,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.473717,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:12Z"} authorization-1 | {"client_addr":"127.0.0.1:39624","level":"info","msg":"Received request.","req_id":827,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/38d1930a-4ac2-478b-9118-0036ac89b42f","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"769a9320-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/38d1930a-4ac2-478b-9118-0036ac89b42f","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837952,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk1Mn0.pszHAIOnxOrR9PR9M9Lesz5Gn9LMSSHZTWcS92JUHdo"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"769a9320-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39624","level":"info","msg":"Sent response.","req_id":827,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.279521,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"769ae140-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837952,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk1Mn0.pszHAIOnxOrR9PR9M9Lesz5Gn9LMSSHZTWcS92JUHdo"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"769ae140-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F38d1930a-4ac2-478b-9118-0036ac89b42f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F38d1930a-4ac2-478b-9118-0036ac89b42f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:12.240819367Z"}]},"request_id":"b2edaf87-d09a-43fb-be05-228b994340fa","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837952.3579593} authorization-1 | {"client_addr":"127.0.0.1:47340","level":"info","msg":"Received request.","req_id":828,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:12Z"} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"769a9320-49d8-11ef-9fe8-9113c2c8d024","responseTime":9,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:47340","level":"info","msg":"Sent response.","req_id":828,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.993655,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:12Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8beaf4a-b4db-4dd2-912d-64176938ef93","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8beaf4a-b4db-4dd2-912d-64176938ef93","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:10.037604370Z"}]},"request_id":"fc4f7b6f-8f14-4e76-b5a5-ce9afb007377","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837952.3616054} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F38d1930a-4ac2-478b-9118-0036ac89b42f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c46e5029-7587-4c75-bd2b-e5756932b056","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837952.3618658} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"769a9320-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/38d1930a-4ac2-478b-9118-0036ac89b42f? 200 29ms","method":"GET","requestID":"769a9320-49d8-11ef-9fe8-9113c2c8d024","responseTime":29,"status":200,"url":"/devices/38d1930a-4ac2-478b-9118-0036ac89b42f?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 11ms","method":"POST","requestID":"769ae140-49d8-11ef-9fe8-9113c2c8d024","responseTime":11,"status":200,"url":"/relations/query"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/38d1930a-4ac2-478b-9118-0036ac89b42f","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"769b2f60-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/38d1930a-4ac2-478b-9118-0036ac89b42f","object_type":"device","rebac_allow":false,"scope_allow":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":"769b2f60-49d8-11ef-9fe8-9113c2c8d024","responseTime":25,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1e78dfa6-51ef-415f-b575-5a4abda70983#owner@http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1e78dfa6-51ef-415f-b575-5a4abda70983","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"ed902e66-5068-4edf-ad5f-13b4965b1e5d","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837952.3686435} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0dacde3f-ba2a-4149-9894-d5067ccb9c15","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837952.3690805} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"88291bf2419f23523568b07fc786d095","responseTime":23,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"769ae140-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/e8beaf4a-b4db-4dd2-912d-64176938ef93? 200 35ms","method":"GET","requestID":"769ae140-49d8-11ef-9fe8-9113c2c8d024","responseTime":35,"status":200,"url":"/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93?"} device-1 | {"data":{"error":"MissingEntityError","message":"Could not find websocket connection for device 38d1930a-4ac2-478b-9118-0036ac89b42f","method":"POST","stack":"MissingEntityError: Could not find websocket connection for device 38d1930a-4ac2-478b-9118-0036ac89b42f\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/38d1930a-4ac2-478b-9118-0036ac89b42f/signaling"},"level":"error","message":"An error occurred during the handling of a request","requestID":"769b2f60-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/38d1930a-4ac2-478b-9118-0036ac89b42f/signaling 404 35ms","method":"POST","requestID":"769b2f60-49d8-11ef-9fe8-9113c2c8d024","responseTime":35,"status":404,"url":"/devices/38d1930a-4ac2-478b-9118-0036ac89b42f/signaling"} experiment-1 | {"data":{"response":{"body":{"error":"MissingEntityError","message":"Could not find websocket connection for device 38d1930a-4ac2-478b-9118-0036ac89b42f"},"status":404}},"level":"error","message":"Could not send status-update message","requestID":"88291bf2419f23523568b07fc786d095"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"76a149e0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":829,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:12Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/1e78dfa6-51ef-415f-b575-5a4abda70983","user":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"88291bf2419f23523568b07fc786d095"} gateway-1 | {"time_local":"24/Jul/2024:16:19:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1107","request_time":"0.268","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"88291bf2419f23523568b07fc786d095"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8beaf4a-b4db-4dd2-912d-64176938ef93","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f251066a-8a58-403d-9565-ec113bc705e9","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837952.3893688} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":829,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.615604,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"76a149e0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} experiment-1 | {"level":"info","message":"POST /experiments? 201 261ms","method":"POST","requestID":"88291bf2419f23523568b07fc786d095","responseTime":261,"status":201,"url":"/experiments?"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"76a149e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"76a149e0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/e8beaf4a-b4db-4dd2-912d-64176938ef93/signaling 200 13ms","method":"POST","requestID":"76a149e0-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b217bb0947dcc6c51289849a84e73856","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b217bb0947dcc6c51289849a84e73856","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Jul/2024:16:19:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/38d1930a-4ac2-478b-9118-0036ac89b42f/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":"b217bb0947dcc6c51289849a84e73856"} device-1 | {"level":"info","message":"OPTIONS /devices/38d1930a-4ac2-478b-9118-0036ac89b42f/websocket 200 1ms","method":"OPTIONS","requestID":"b217bb0947dcc6c51289849a84e73856","responseTime":1,"status":200,"url":"/devices/38d1930a-4ac2-478b-9118-0036ac89b42f/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6InY0YTFRNnctMXI1OHh1OTRibzJCOHRuV0J5aE5HYWVtdHVLSlZTVGhuNFFBb3k5akpiMmlGYnR0Sm1fQjE5QkhPaTE4eHVJbFQzN0t3SERWNUI3YWpnIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk1NH0.6d1LfntBhfu2_tum49swWm_bUQTLGrAOjc4glDkHN1E","level":"info","message":"auth send jwt","requestID":"e59245d5e8b490db63a5a7a66d703907"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e59245d5e8b490db63a5a7a66d703907","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e59245d5e8b490db63a5a7a66d703907"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":830,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:14Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":830,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.310623,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:14Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/38d1930a-4ac2-478b-9118-0036ac89b42f","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"e59245d5e8b490db63a5a7a66d703907","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/38d1930a-4ac2-478b-9118-0036ac89b42f","object_type":"device","payload":{"admin":true,"edgeToken":"v4a1Q6w-1r58xu94bo2B8tnWByhNGaemtuKJVSThn4QAoy9jJb2iFbttJm_B19BHOi18xuIlT37KwHDV5B7ajg","iat":1721837954,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6InY0YTFRNnctMXI1OHh1OTRibzJCOHRuV0J5aE5HYWVtdHVLSlZTVGhuNFFBb3k5akpiMmlGYnR0Sm1fQjE5QkhPaTE4eHVJbFQzN0t3SERWNUI3YWpnIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk1NH0.6d1LfntBhfu2_tum49swWm_bUQTLGrAOjc4glDkHN1E"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e59245d5e8b490db63a5a7a66d703907","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e59245d5e8b490db63a5a7a66d703907"} gateway-1 | {"time_local":"24/Jul/2024:16:19:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/38d1930a-4ac2-478b-9118-0036ac89b42f/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":"e59245d5e8b490db63a5a7a66d703907"} device-1 | {"level":"info","message":"POST /devices/38d1930a-4ac2-478b-9118-0036ac89b42f/websocket 200 22ms","method":"POST","requestID":"e59245d5e8b490db63a5a7a66d703907","responseTime":22,"status":200,"url":"/devices/38d1930a-4ac2-478b-9118-0036ac89b42f/websocket"} device-1 | {"level":"info","message":"Sending changed-callback for device 'http://localhost/devices/38d1930a-4ac2-478b-9118-0036ac89b42f' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"device 'http://localhost/devices/38d1930a-4ac2-478b-9118-0036ac89b42f' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bd2d616f16fcc2f5036f9901e53bd19b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"bd2d616f16fcc2f5036f9901e53bd19b","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","device":{"announcedAvailability":[],"connected":true,"description":"A JS test device","isPublic":true,"name":"JS Device 1","services":[],"type":"device","url":"http://localhost/devices/38d1930a-4ac2-478b-9118-0036ac89b42f"},"eventType":"device-changed"}},"level":"info","message":"received a callback","requestID":"bd2d616f16fcc2f5036f9901e53bd19b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk1NH0.Bm53YbCEf6CG4UEiVIpwaLBPhyGC6OSGWWhB_zHPHGA","level":"info","message":"auth send jwt","requestID":"1b5a2af825d6a8158c34e9d0a592cec5"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"1b5a2af825d6a8158c34e9d0a592cec5","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1b5a2af825d6a8158c34e9d0a592cec5"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":831,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:14Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":831,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.201915,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/38d1930a-4ac2-478b-9118-0036ac89b42f","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"1b5a2af825d6a8158c34e9d0a592cec5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/38d1930a-4ac2-478b-9118-0036ac89b42f","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837954,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk1NH0.Bm53YbCEf6CG4UEiVIpwaLBPhyGC6OSGWWhB_zHPHGA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1b5a2af825d6a8158c34e9d0a592cec5","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F38d1930a-4ac2-478b-9118-0036ac89b42f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F38d1930a-4ac2-478b-9118-0036ac89b42f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:12.240819367Z"}]},"request_id":"da37e864-0b21-4597-9c57-20972fe7679b","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837954.4225636} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"1b5a2af825d6a8158c34e9d0a592cec5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1b5a2af825d6a8158c34e9d0a592cec5"} device-1 | {"level":"info","message":"GET /devices/38d1930a-4ac2-478b-9118-0036ac89b42f? 200 19ms","method":"GET","requestID":"1b5a2af825d6a8158c34e9d0a592cec5","responseTime":19,"status":200,"url":"/devices/38d1930a-4ac2-478b-9118-0036ac89b42f?"} gateway-1 | {"time_local":"24/Jul/2024:16:19:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/38d1930a-4ac2-478b-9118-0036ac89b42f? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.028","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1b5a2af825d6a8158c34e9d0a592cec5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 27ms","method":"POST","requestID":"bd2d616f16fcc2f5036f9901e53bd19b","responseTime":27,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:19:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.032","http_referrer":"","http_user_agent":"node-fetch","requestID":"bd2d616f16fcc2f5036f9901e53bd19b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk1NH0.Bm53YbCEf6CG4UEiVIpwaLBPhyGC6OSGWWhB_zHPHGA","level":"info","message":"auth send jwt","requestID":"570cca95d5b3a573a7ed6d1f562f174d"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"570cca95d5b3a573a7ed6d1f562f174d","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"570cca95d5b3a573a7ed6d1f562f174d"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":832,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:14Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":832,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.331939,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"570cca95d5b3a573a7ed6d1f562f174d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837954,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk1NH0.Bm53YbCEf6CG4UEiVIpwaLBPhyGC6OSGWWhB_zHPHGA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"570cca95d5b3a573a7ed6d1f562f174d","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8beaf4a-b4db-4dd2-912d-64176938ef93","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8beaf4a-b4db-4dd2-912d-64176938ef93","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:10.037604370Z"}]},"request_id":"2c585ed9-e13c-4514-80cd-e9ca3b226637","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837954.4490166} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"570cca95d5b3a573a7ed6d1f562f174d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"570cca95d5b3a573a7ed6d1f562f174d"} gateway-1 | {"time_local":"24/Jul/2024:16:19:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e8beaf4a-b4db-4dd2-912d-64176938ef93? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"570cca95d5b3a573a7ed6d1f562f174d"} device-1 | {"level":"info","message":"GET /devices/e8beaf4a-b4db-4dd2-912d-64176938ef93? 200 16ms","method":"GET","requestID":"570cca95d5b3a573a7ed6d1f562f174d","responseTime":16,"status":200,"url":"/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"799c3a60-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"799c8880-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":833,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:17Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":833,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.997401,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/38d1930a-4ac2-478b-9118-0036ac89b42f","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"799c3a60-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/38d1930a-4ac2-478b-9118-0036ac89b42f","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837952,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk1Mn0.pszHAIOnxOrR9PR9M9Lesz5Gn9LMSSHZTWcS92JUHdo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"799c3a60-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:47344","level":"info","msg":"Received request.","req_id":834,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:17Z"} authorization-1 | {"client_addr":"127.0.0.1:47344","level":"info","msg":"Sent response.","req_id":834,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.732014,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"799c8880-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837952,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk1Mn0.pszHAIOnxOrR9PR9M9Lesz5Gn9LMSSHZTWcS92JUHdo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"799c8880-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F38d1930a-4ac2-478b-9118-0036ac89b42f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F38d1930a-4ac2-478b-9118-0036ac89b42f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:12.240819367Z"}]},"request_id":"79092c2d-fcea-4dfd-b90f-8ebf44a47084","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837957.3940496} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"799c3a60-49d8-11ef-9fe8-9113c2c8d024","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:58090","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8beaf4a-b4db-4dd2-912d-64176938ef93","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8beaf4a-b4db-4dd2-912d-64176938ef93","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"timestamp":"2024-07-24T16:19:10.037604370Z"}]},"request_id":"4ff22219-6ee3-4bdc-8bc6-03293b71d2ac","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837957.395296} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"799c8880-49d8-11ef-9fe8-9113c2c8d024","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"799c3a60-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/38d1930a-4ac2-478b-9118-0036ac89b42f? 200 17ms","method":"GET","requestID":"799c3a60-49d8-11ef-9fe8-9113c2c8d024","responseTime":17,"status":200,"url":"/devices/38d1930a-4ac2-478b-9118-0036ac89b42f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"799c8880-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /devices/e8beaf4a-b4db-4dd2-912d-64176938ef93? 200 15ms","method":"GET","requestID":"799c8880-49d8-11ef-9fe8-9113c2c8d024","responseTime":15,"status":200,"url":"/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"799f6eb0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":835,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:17Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F38d1930a-4ac2-478b-9118-0036ac89b42f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a2da2bca-5169-4e6a-96bf-7164e6abcfb0","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837957.4099517} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":835,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.275337,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/38d1930a-4ac2-478b-9118-0036ac89b42f","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"799f6eb0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/38d1930a-4ac2-478b-9118-0036ac89b42f","object_type":"device","rebac_allow":false,"scope_allow":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":"799f6eb0-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"799f6eb0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/38d1930a-4ac2-478b-9118-0036ac89b42f/signaling 200 13ms","method":"POST","requestID":"799f6eb0-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/devices/38d1930a-4ac2-478b-9118-0036ac89b42f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"79a1dfb0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":836,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:17Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8beaf4a-b4db-4dd2-912d-64176938ef93","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7e3d719c-fcd3-4c9d-ac2b-b8cab415efc4","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837957.4263353} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":836,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.965775,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"79a1dfb0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93","object_type":"device","rebac_allow":false,"scope_allow":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":"79a1dfb0-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"79a1dfb0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/e8beaf4a-b4db-4dd2-912d-64176938ef93/signaling 200 13ms","method":"POST","requestID":"79a1dfb0-49d8-11ef-9fe8-9113c2c8d024","responseTime":13,"status":200,"url":"/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1e78dfa6-51ef-415f-b575-5a4abda70983"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"88291bf2419f23523568b07fc786d095"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1e78dfa6-51ef-415f-b575-5a4abda70983"},"level":"info","message":"Building connection plan","requestID":"88291bf2419f23523568b07fc786d095"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"cfba2d2b-9472-4028-b24f-ae8fce2c561e"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"378488bb-505e-4f71-a798-155b02f4e35b"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"08bc5d24-eca5-4ea3-be1d-3f88cc55785e"}]},"level":"info","message":"Built pairwise service configurations","requestID":"88291bf2419f23523568b07fc786d095"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/38d1930a-4ac2-478b-9118-0036ac89b42f"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"88291bf2419f23523568b07fc786d095"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"79a477c0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":837,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:17Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":837,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.284332,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:17Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"79a477c0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837952,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk1Mn0.pszHAIOnxOrR9PR9M9Lesz5Gn9LMSSHZTWcS92JUHdo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"79a477c0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","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%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]}},"raw_response":{},"request_id":"1c4695c7-da38-4905-90b8-3376bb65e45e","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837957.454315} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"aec95841-dbc7-4371-a384-f1658df29339","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837957.4545653} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"79a477c0-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"79a477c0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"79a477c0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/fd8dae21-0664-4b8e-a462-04d2333c338a'","requestID":"79a477c0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/fd8dae21-0664-4b8e-a462-04d2333c338a'","requestID":"79a477c0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"79a477c0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 34ms","method":"POST","requestID":"79a477c0-49d8-11ef-9fe8-9113c2c8d024","responseTime":34,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"79a477c0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/fd8dae21-0664-4b8e-a462-04d2333c338a","device":"38d1930a-4ac2-478b-9118-0036ac89b42f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/fd8dae21-0664-4b8e-a462-04d2333c338a","device":"e8beaf4a-b4db-4dd2-912d-64176938ef93","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1e78dfa6-51ef-415f-b575-5a4abda70983"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"88291bf2419f23523568b07fc786d095"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"79aeff10-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":838,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:17Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F38d1930a-4ac2-478b-9118-0036ac89b42f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b72855e7-7cfc-4d2f-8c0d-14fefa5dff23","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837957.5101101} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":838,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.353823,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/38d1930a-4ac2-478b-9118-0036ac89b42f","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"79aeff10-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/38d1930a-4ac2-478b-9118-0036ac89b42f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"79aeff10-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"79aeff10-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/38d1930a-4ac2-478b-9118-0036ac89b42f/signaling 200 8ms","method":"POST","requestID":"79aeff10-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/devices/38d1930a-4ac2-478b-9118-0036ac89b42f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"79b085b0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":839,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:17Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8beaf4a-b4db-4dd2-912d-64176938ef93","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2783d977-f927-470f-9ebb-e64661b59864","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837957.5201662} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":839,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.844865,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"79b085b0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93","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":"e8beaf4a-b4db-4dd2-912d-64176938ef93","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"79b085b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"content":{"canTrickle":true},"device":"e8beaf4a-b4db-4dd2-912d-64176938ef93","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"79b085b0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/e8beaf4a-b4db-4dd2-912d-64176938ef93/signaling 200 10ms","method":"POST","requestID":"79b085b0-49d8-11ef-9fe8-9113c2c8d024","responseTime":10,"status":200,"url":"/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93/signaling"} device-1 | {"device":"38d1930a-4ac2-478b-9118-0036ac89b42f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"38d1930a-4ac2-478b-9118-0036ac89b42f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 3045672685951565129 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:ScpU\r\na=ice-pwd:w+/Tq4MRuRnnSYJde8fSEQBl\r\na=ice-options:trickle\r\na=fingerprint:sha-256 28:BC:6B:59:6F:42:8D:9E:66:3D:91:1B:E1:E8:5C:9D:42:59:16:35:44:42:AD:D6:F2:6A:0F:23:C7:61:02:6E\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"e8beaf4a-b4db-4dd2-912d-64176938ef93","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 8346748095113972910 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:AVu/\r\na=ice-pwd:pEWIU0IMo/2rc+Jx835ZWzMw\r\na=ice-options:trickle\r\na=fingerprint:sha-256 30:D4:54:17:68:30:16:B2:BA:65:5E:EC:F3:1E:09:45:96:06:76:55:9A:BA:68:77:1D:9E:7C:AA:EB:62:26:12\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"38d1930a-4ac2-478b-9118-0036ac89b42f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3643936452 1 udp 2113937151 754cd6c7-5510-4cdd-ad8a-569c4885d147.local 44362 typ host generation 0 ufrag AVu/ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"38d1930a-4ac2-478b-9118-0036ac89b42f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1562338491 1 udp 1677729535 141.24.211.56 44362 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag AVu/ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"38d1930a-4ac2-478b-9118-0036ac89b42f","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/38d1930a-4ac2-478b-9118-0036ac89b42f'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/38d1930a-4ac2-478b-9118-0036ac89b42f'"} device-1 | {"content":{"candidate":"candidate:4244044992 1 udp 2113937151 2cb16f35-ae2e-4c3a-a216-208a1ddeef8e.local 55737 typ host generation 0 ufrag ScpU network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"e8beaf4a-b4db-4dd2-912d-64176938ef93","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1876778451 1 udp 1677729535 141.24.211.56 55737 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag ScpU network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"e8beaf4a-b4db-4dd2-912d-64176938ef93","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/e8beaf4a-b4db-4dd2-912d-64176938ef93'"} device-1 | {"device":"e8beaf4a-b4db-4dd2-912d-64176938ef93","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"38d1930a-4ac2-478b-9118-0036ac89b42f","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/fd8dae21-0664-4b8e-a462-04d2333c338a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"fd8dae21-0664-4b8e-a462-04d2333c338a","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"38d1930a-4ac2-478b-9118-0036ac89b42f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"e8beaf4a-b4db-4dd2-912d-64176938ef93","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7d85e0848c0fcab5b3472638fa014b4e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"7d85e0848c0fcab5b3472638fa014b4e","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/38d1930a-4ac2-478b-9118-0036ac89b42f"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/fd8dae21-0664-4b8e-a462-04d2333c338a"}}},"level":"info","message":"received a callback","requestID":"7d85e0848c0fcab5b3472638fa014b4e"} device-1 | {"device":"e8beaf4a-b4db-4dd2-912d-64176938ef93","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"38d1930a-4ac2-478b-9118-0036ac89b42f","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":"7d85e0848c0fcab5b3472638fa014b4e","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:19:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.008","http_referrer":"","http_user_agent":"node-fetch","requestID":"7d85e0848c0fcab5b3472638fa014b4e"} device-1 | {"device":"38d1930a-4ac2-478b-9118-0036ac89b42f","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"fd8dae21-0664-4b8e-a462-04d2333c338a","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"fd8dae21-0664-4b8e-a462-04d2333c338a","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/fd8dae21-0664-4b8e-a462-04d2333c338a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"fd8dae21-0664-4b8e-a462-04d2333c338a","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"137b7dc96fa00f1131ca5d78c0931019","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"137b7dc96fa00f1131ca5d78c0931019","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/38d1930a-4ac2-478b-9118-0036ac89b42f"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/fd8dae21-0664-4b8e-a462-04d2333c338a"}}},"level":"info","message":"received a callback","requestID":"137b7dc96fa00f1131ca5d78c0931019"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"79be4150-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":840,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:17Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ffd8dae21-0664-4b8e-a462-04d2333c338a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"79df6b7f-fcc3-4ff2-bc0d-a18001226f78","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837957.6092265} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":840,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.159042,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/fd8dae21-0664-4b8e-a462-04d2333c338a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"79be4150-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/fd8dae21-0664-4b8e-a462-04d2333c338a","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":"79be4150-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"79be4150-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"GET /peerconnections/fd8dae21-0664-4b8e-a462-04d2333c338a 200 7ms","method":"GET","requestID":"79be4150-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/peerconnections/fd8dae21-0664-4b8e-a462-04d2333c338a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 33ms","method":"POST","requestID":"137b7dc96fa00f1131ca5d78c0931019","responseTime":33,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:19:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.036","http_referrer":"","http_user_agent":"node-fetch","requestID":"137b7dc96fa00f1131ca5d78c0931019"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"79c2ae20-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":841,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:17Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F38d1930a-4ac2-478b-9118-0036ac89b42f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"faa74104-95a9-4af8-8947-53d484c79910","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837957.6385007} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":841,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.067631,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/38d1930a-4ac2-478b-9118-0036ac89b42f","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"79c2ae20-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/38d1930a-4ac2-478b-9118-0036ac89b42f","object_type":"device","rebac_allow":false,"scope_allow":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":"79c2ae20-49d8-11ef-9fe8-9113c2c8d024","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"79c2ae20-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/38d1930a-4ac2-478b-9118-0036ac89b42f/signaling 200 8ms","method":"POST","requestID":"79c2ae20-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/devices/38d1930a-4ac2-478b-9118-0036ac89b42f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"79c40db0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":842,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:17Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8beaf4a-b4db-4dd2-912d-64176938ef93","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8ae75eab-a734-480c-abc1-9c076d2992f3","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837957.6480687} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":842,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.748916,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"79c40db0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"79c40db0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"79c40db0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/e8beaf4a-b4db-4dd2-912d-64176938ef93/signaling 200 8ms","method":"POST","requestID":"79c40db0-49d8-11ef-9fe8-9113c2c8d024","responseTime":8,"status":200,"url":"/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk1N30.3GnYtuVF-7VLF3Ao91pPh3BsA1eEZVAYCULK3Y8epPs","level":"info","message":"auth send jwt","requestID":"f6a316236afdf795cf002bb868adb950"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f6a316236afdf795cf002bb868adb950","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/1e78dfa6-51ef-415f-b575-5a4abda70983","requestID":"f6a316236afdf795cf002bb868adb950"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":843,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:17Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":843,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.899121,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/1e78dfa6-51ef-415f-b575-5a4abda70983","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"f6a316236afdf795cf002bb868adb950","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/1e78dfa6-51ef-415f-b575-5a4abda70983","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837957,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk1N30.3GnYtuVF-7VLF3Ao91pPh3BsA1eEZVAYCULK3Y8epPs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f6a316236afdf795cf002bb868adb950","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/1e78dfa6-51ef-415f-b575-5a4abda70983","requestID":"f6a316236afdf795cf002bb868adb950"} gateway-1 | {"time_local":"24/Jul/2024:16:19:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/1e78dfa6-51ef-415f-b575-5a4abda70983 HTTP/1.1","status": "200","body_bytes_sent":"1180","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f6a316236afdf795cf002bb868adb950"} experiment-1 | {"level":"info","message":"GET /experiments/1e78dfa6-51ef-415f-b575-5a4abda70983 200 10ms","method":"GET","requestID":"f6a316236afdf795cf002bb868adb950","responseTime":10,"status":200,"url":"/experiments/1e78dfa6-51ef-415f-b575-5a4abda70983"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk1N30.3GnYtuVF-7VLF3Ao91pPh3BsA1eEZVAYCULK3Y8epPs","level":"info","message":"auth send jwt","requestID":"89ca09adcfcaf50c126f44db29a255dc"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"89ca09adcfcaf50c126f44db29a255dc","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/1e78dfa6-51ef-415f-b575-5a4abda70983","requestID":"89ca09adcfcaf50c126f44db29a255dc"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":844,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:17Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":844,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.660122,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:17Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/1e78dfa6-51ef-415f-b575-5a4abda70983","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"89ca09adcfcaf50c126f44db29a255dc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"experiment:http://localhost/experiments/1e78dfa6-51ef-415f-b575-5a4abda70983","object_type":"experiment","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837957,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk1N30.3GnYtuVF-7VLF3Ao91pPh3BsA1eEZVAYCULK3Y8epPs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"89ca09adcfcaf50c126f44db29a255dc","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1e78dfa6-51ef-415f-b575-5a4abda70983"},"level":"info","message":"Attempting to finish experiment","requestID":"89ca09adcfcaf50c126f44db29a255dc"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"79cd5c80-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":845,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:17Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":845,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.167576,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:17Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/fd8dae21-0664-4b8e-a462-04d2333c338a","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"79cd5c80-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"peerconnection:http://localhost/peerconnections/fd8dae21-0664-4b8e-a462-04d2333c338a","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837957,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk1N30.3GnYtuVF-7VLF3Ao91pPh3BsA1eEZVAYCULK3Y8epPs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"79cd5c80-49d8-11ef-9fe8-9113c2c8d024","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/fd8dae21-0664-4b8e-a462-04d2333c338a","device":"38d1930a-4ac2-478b-9118-0036ac89b42f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/fd8dae21-0664-4b8e-a462-04d2333c338a","device":"e8beaf4a-b4db-4dd2-912d-64176938ef93","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/fd8dae21-0664-4b8e-a462-04d2333c338a' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/fd8dae21-0664-4b8e-a462-04d2333c338a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"fd8dae21-0664-4b8e-a462-04d2333c338a","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ffd8dae21-0664-4b8e-a462-04d2333c338a': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ffd8dae21-0664-4b8e-a462-04d2333c338a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"41ed43e0-078b-4820-969a-e726498e2b0a","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837957.7202091} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"74fa2b6b-78d6-47d7-8513-6e2aaa4b6810","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837957.7205677} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8b3e46fe51bb63868eab6f759154b652","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8b3e46fe51bb63868eab6f759154b652","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"79cd5c80-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/38d1930a-4ac2-478b-9118-0036ac89b42f"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/fd8dae21-0664-4b8e-a462-04d2333c338a"}}},"level":"info","message":"received a callback","requestID":"8b3e46fe51bb63868eab6f759154b652"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"035e48e30322eee4d5a29be3598360b9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"035e48e30322eee4d5a29be3598360b9","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/38d1930a-4ac2-478b-9118-0036ac89b42f"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/fd8dae21-0664-4b8e-a462-04d2333c338a"}}},"level":"info","message":"received a callback","requestID":"035e48e30322eee4d5a29be3598360b9"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"79cd5c80-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"DELETE /peerconnections/fd8dae21-0664-4b8e-a462-04d2333c338a 204 34ms","method":"DELETE","requestID":"79cd5c80-49d8-11ef-9fe8-9113c2c8d024","responseTime":34,"status":204,"url":"/peerconnections/fd8dae21-0664-4b8e-a462-04d2333c338a"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/38d1930a-4ac2-478b-9118-0036ac89b42f'"} device-1 | {"level":"info","message":"deleteDevicesByDeviceId called","requestID":"79d2dac0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":846,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:17Z"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":846,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.154224,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:17Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"device:http://localhost/devices/38d1930a-4ac2-478b-9118-0036ac89b42f","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"79d2dac0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52","object":"device:http://localhost/devices/38d1930a-4ac2-478b-9118-0036ac89b42f","object_type":"device","payload":{"admin":true,"edgeToken":"BB6oMjce9RxMcLMZMINmsomtSKZcRvWzxQFNdNHi-mnCJdIChaN5KlNZUcsOZTClUsBo4UargGhuH2ilHu0z4Q","iat":1721837957,"sub":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52","subject_alt":"http://localhost/users/aec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2FlYzhkZmQ4LTY4ZjUtNDE4NC1iZDczLWM4YjBjYmYxOWU1MiIsImVkZ2VUb2tlbiI6IkJCNm9NamNlOVJ4TWNMTVpNSU5tc29tdFNLWmNSdld6eFFGTmROSGktbW5DSmRJQ2hhTjVLbE5aVWNzT1pUQ2xVc0JvNFVhcmdHaHVIMmlsSHUwejRRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTgzNzk1N30.3GnYtuVF-7VLF3Ao91pPh3BsA1eEZVAYCULK3Y8epPs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"79d2dac0-49d8-11ef-9fe8-9113c2c8d024","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'device:http%3A%2F%2Flocalhost%2Fdevices%2F38d1930a-4ac2-478b-9118-0036ac89b42f': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F38d1930a-4ac2-478b-9118-0036ac89b42f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"5d86231d-eff5-4664-98ba-f2b987e67256","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837957.7536974} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"feb35b87-adfd-46c9-b451-35963706b296","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837957.7541351} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"79d2dac0-49d8-11ef-9fe8-9113c2c8d024","responseTime":7,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"deleteDevicesByDeviceId succeeded","requestID":"79d2dac0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"DELETE /devices/38d1930a-4ac2-478b-9118-0036ac89b42f 204 30ms","method":"DELETE","requestID":"79d2dac0-49d8-11ef-9fe8-9113c2c8d024","responseTime":30,"status":204,"url":"/devices/38d1930a-4ac2-478b-9118-0036ac89b42f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1e78dfa6-51ef-415f-b575-5a4abda70983"},"level":"info","message":"Successfully finished experiment","requestID":"89ca09adcfcaf50c126f44db29a255dc"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"79da2dc0-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":847,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:17Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F38d1930a-4ac2-478b-9118-0036ac89b42f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"72fee29b-fe0c-406f-b817-a0a97a79dd88","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837957.7949023} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":847,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.799622,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/38d1930a-4ac2-478b-9118-0036ac89b42f","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"79da2dc0-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/38d1930a-4ac2-478b-9118-0036ac89b42f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"79da2dc0-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"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/38d1930a-4ac2-478b-9118-0036ac89b42f/signaling"},"level":"error","message":"An error occurred during the handling of a request","requestID":"79da2dc0-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/38d1930a-4ac2-478b-9118-0036ac89b42f/signaling 404 11ms","method":"POST","requestID":"79da2dc0-49d8-11ef-9fe8-9113c2c8d024","responseTime":11,"status":404,"url":"/devices/38d1930a-4ac2-478b-9118-0036ac89b42f/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":"89ca09adcfcaf50c126f44db29a255dc"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"79dc2990-49d8-11ef-9fe8-9113c2c8d024"} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Received request.","req_id":848,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-24T16:19:17Z"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","contextual_tuples":null,"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8beaf4a-b4db-4dd2-912d-64176938ef93","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eda1927f-7a22-4483-be20-7bf7814d79df","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837957.8068743} authorization-1 | {"client_addr":"127.0.0.1:48882","level":"info","msg":"Sent response.","req_id":848,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.167479,"resp_status":200,"subsystem":"opa","time":"2024-07-24T16:19:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93","openfga":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"requestID":"79dc2990-49d8-11ef-9fe8-9113c2c8d024","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"79dc2990-49d8-11ef-9fe8-9113c2c8d024","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1e78dfa6-51ef-415f-b575-5a4abda70983': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"authorization_model_id":"01J3JRGJB45D7WF9F1DQAMP2EJ","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1e78dfa6-51ef-415f-b575-5a4abda70983","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Faec8dfd8-68f5-4184-bd73-c8b0cbf19e52"}]},"store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","writes":null},"raw_response":{},"request_id":"338b551e-3190-420f-8d1e-ed61d31bb9af","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837957.8079631} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:58090","raw_request":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP"},"raw_response":{"authorization_model":{"id":"01J3JRGJB45D7WF9F1DQAMP2EJ","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e0c95cb0-ff99-4151-90a9-4a661dc67d03","store_id":"01J3JRGJ9ZKA5JHZVYBBT1QPWP","subsystem":"openfga","timestamp":1721837957.8081086} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"89ca09adcfcaf50c126f44db29a255dc","responseTime":24,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"79dc2990-49d8-11ef-9fe8-9113c2c8d024"} device-1 | {"level":"info","message":"POST /devices/e8beaf4a-b4db-4dd2-912d-64176938ef93/signaling 200 11ms","method":"POST","requestID":"79dc2990-49d8-11ef-9fe8-9113c2c8d024","responseTime":11,"status":200,"url":"/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/1e78dfa6-51ef-415f-b575-5a4abda70983","requestID":"89ca09adcfcaf50c126f44db29a255dc"} gateway-1 | {"time_local":"24/Jul/2024:16:19:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/1e78dfa6-51ef-415f-b575-5a4abda70983 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.180","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"89ca09adcfcaf50c126f44db29a255dc"} experiment-1 | {"level":"info","message":"DELETE /experiments/1e78dfa6-51ef-415f-b575-5a4abda70983 204 177ms","method":"DELETE","requestID":"89ca09adcfcaf50c126f44db29a255dc","responseTime":177,"status":204,"url":"/experiments/1e78dfa6-51ef-415f-b575-5a4abda70983"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 151ms","method":"POST","requestID":"8b3e46fe51bb63868eab6f759154b652","responseTime":151,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:19:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.153","http_referrer":"","http_user_agent":"node-fetch","requestID":"8b3e46fe51bb63868eab6f759154b652"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 151ms","method":"POST","requestID":"035e48e30322eee4d5a29be3598360b9","responseTime":151,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:19:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.154","http_referrer":"","http_user_agent":"node-fetch","requestID":"035e48e30322eee4d5a29be3598360b9"} gateway-1 | {"time_local":"24/Jul/2024:16:19:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2647","request_time":"5.801","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"4e2f3b48ae5d1c7085084441e3b8c70c"} gateway-1 | {"time_local":"24/Jul/2024:16:19:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2406","request_time":"3.495","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"04c22da8cf56a281b697bbeb2566d176"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/e8beaf4a-b4db-4dd2-912d-64176938ef93' closed"} device-1 | {"level":"info","message":"Sending changed-callback for device 'http://localhost/devices/38d1930a-4ac2-478b-9118-0036ac89b42f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/38d1930a-4ac2-478b-9118-0036ac89b42f' closed"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e332421ec596593561dfa5fec466f2a3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"e332421ec596593561dfa5fec466f2a3","responseTime":0,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","device":{"announcedAvailability":[],"connected":false,"description":"A JS test device","isPublic":true,"name":"JS Device 1","services":[],"type":"device","url":"http://localhost/devices/38d1930a-4ac2-478b-9118-0036ac89b42f"},"eventType":"device-changed"}},"level":"info","message":"received a callback","requestID":"e332421ec596593561dfa5fec466f2a3"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 410 2ms","method":"POST","requestID":"e332421ec596593561dfa5fec466f2a3","responseTime":2,"status":410,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Jul/2024:16:19:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "410","body_bytes_sent":"5","request_time":"0.005","http_referrer":"","http_user_agent":"node-fetch","requestID":"e332421ec596593561dfa5fec466f2a3"} federation-1 exited with code 0 authentication-1 exited with code 0 device-1 exited with code 0 authorization-1 exited with code 0 experiment-1 exited with code 0 gateway-1 exited with code 0