time="2024-09-03T15:36:37Z" level=warning msg="/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/integration-test/docker-compose.yaml: `version` is obsolete" Container integration-test-device-1 Creating Container integration-test-federation-1 Creating Container integration-test-authentication-1 Creating Container integration-test-gateway-1 Creating Container integration-test-authorization-1 Creating Container integration-test-experiment-1 Creating Container integration-test-experiment-1 Created Container integration-test-federation-1 Created Container integration-test-gateway-1 Created Container integration-test-authentication-1 Created Container integration-test-device-1 Created Container integration-test-authorization-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/lti_service.conf to /etc/nginx/lti_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 authorization-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} authentication-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} device-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} authorization-1 | {"addrs":["localhost:3011"],"diagnostic-addrs":[],"level":"info","msg":"Initializing server.","subsystem":"opa","time":"2024-09-03T15:37:09Z"} authentication-1 | {"level":"info","message":"Authentication Service started successfully"} device-1 | {"level":"info","message":"Device Service started successfully"} experiment-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} federation-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} authorization-1 | {"client_addr":"127.0.0.1:36590","level":"info","msg":"Received request.","req_id":1,"req_method":"GET","req_path":"/","subsystem":"opa","time":"2024-09-03T15:37:10Z"} authorization-1 | {"client_addr":"127.0.0.1:36590","level":"info","msg":"Sent response.","req_id":1,"req_method":"GET","req_path":"/","resp_bytes":1424,"resp_duration":0.332987,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:10Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"๐Ÿงช experimental features enabled: []","subsystem":"openfga","timestamp":1725377830.3113964} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"using 'memory' storage engine","subsystem":"openfga","timestamp":1725377830.3114614} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"warn","message":"authentication is disabled","subsystem":"openfga","timestamp":1725377830.311472} 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":1725377830.3114843} 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":1725377830.3114965} 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":1725377830.3115203,"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":1725377830.3119042} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"HTTP server listening on 'localhost:3013'...","subsystem":"openfga","timestamp":1725377830.3125741} 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:50050","raw_request":{"name":"crosslab"},"raw_response":{"created_at":"2024-09-03T15:37:10.325431883Z","id":"01J6W8GQDNC951JBECC6A98RDR","name":"crosslab","updated_at":"2024-09-03T15:37:10.325431883Z"},"request_id":"0254f66f-466f-493d-89d6-48ef416420af","subsystem":"openfga","timestamp":1725377830.3256438} 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:50050","raw_request":{"schema_version":"1.1","store_id":"01J6W8GQDNC951JBECC6A98RDR","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_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":"01J6W8GQEKG6N8WBRRJAJ13G8N"},"request_id":"2c779b0e-9899-47d6-ba95-caeee11cc881","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377830.355357} authorization-1 | {"client_addr":"127.0.0.1:36590","level":"info","msg":"Received request.","req_id":2,"req_method":"PUT","req_path":"/v1/data/jwt_secret","subsystem":"opa","time":"2024-09-03T15:37:10Z"} authorization-1 | {"client_addr":"127.0.0.1:36590","level":"info","msg":"Sent response.","req_id":2,"req_method":"PUT","req_path":"/v1/data/jwt_secret","resp_bytes":0,"resp_duration":0.186963,"resp_status":204,"subsystem":"opa","time":"2024-09-03T15:37:10Z"} authorization-1 | {"level":"info","message":"Authorization Service started successfully"} experiment-1 | {"level":"info","message":"Experiment Service started successfully"} authorization-1 | {"current_version":"0.54.0","download_opa":"https://openpolicyagent.org/downloads/v0.68.0/opa_linux_amd64","latest_version":"0.68.0","level":"info","msg":"OPA is out of date.","release_notes":"https://github.com/open-policy-agent/opa/releases/tag/v0.68.0","subsystem":"opa","time":"2024-09-03T15:37:10Z"} federation-1 | {"level":"info","message":"Federation Service started successfully"} gateway-1 | {"time_local":"03/Sep/2024:15:37: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.019","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"c414c9a8510a1069830ff4aaaebb4eba"} authentication-1 | {"level":"info","message":"HEAD /auth/status 200 13ms","method":"HEAD","requestID":"c414c9a8510a1069830ff4aaaebb4eba","responseTime":13,"status":200,"url":"/auth/status"} gateway-1 | {"time_local":"03/Sep/2024:15:37: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.020","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"e093914eba1bc7224991381bf8213bbc"} device-1 | {"level":"info","message":"HEAD /device/status 200 14ms","method":"HEAD","requestID":"672240d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":14,"status":200,"url":"/device/status"} gateway-1 | {"time_local":"03/Sep/2024:15:37: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.014","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"b9dee31d5d58d67371154cb358e34139"} authorization-1 | {"level":"info","message":"HEAD /authorization/status 200 8ms","method":"HEAD","requestID":"b9dee31d5d58d67371154cb358e34139","responseTime":8,"status":200,"url":"/authorization/status"} gateway-1 | {"time_local":"03/Sep/2024:15:37: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.024","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"f651bd537b004064d5355aaf5d8c9211"} federation-1 | {"level":"info","message":"HEAD /federation/status 200 14ms","method":"HEAD","requestID":"6729e1f0-6a0a-11ef-b02b-87dddaa99f25","responseTime":14,"status":200,"url":"/federation/status"} gateway-1 | {"time_local":"03/Sep/2024:15:37: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.024","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"436542f900d4b3a0af0b74c25baabc01"} experiment-1 | {"level":"info","message":"HEAD /experiment/status 200 14ms","method":"HEAD","requestID":"672ec3f0-6a0a-11ef-a292-51fa772e7f3b","responseTime":14,"status":200,"url":"/experiment/status"} gateway-1 | {"time_local":"03/Sep/2024:15:37:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /login HTTP/1.1","status": "201","body_bytes_sent":"88","request_time":"0.143","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e1ba13d9e66357e0a0fe24cd4c65c4f8"} authentication-1 | {"level":"info","message":"POST /login 201 121ms","method":"POST","requestID":"e1ba13d9e66357e0a0fe24cd4c65c4f8","responseTime":121,"status":201,"url":"/login"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0Mn0.p8r9CnmiYiPDseSqs9xyvogk282iWsqQOiVZr4QuZXs","level":"info","message":"auth send jwt","requestID":"5000258f0afdb12a973850bcfec6eb8a"} authentication-1 | {"level":"info","message":"GET /auth 200 22ms","method":"GET","requestID":"5000258f0afdb12a973850bcfec6eb8a","responseTime":22,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"5000258f0afdb12a973850bcfec6eb8a"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":3,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:22Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":3,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":2.400075,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"5000258f0afdb12a973850bcfec6eb8a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377842,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0Mn0.p8r9CnmiYiPDseSqs9xyvogk282iWsqQOiVZr4QuZXs"} authorization-1 | {"level":"info","message":"POST /authorize 200 33ms","method":"POST","requestID":"5000258f0afdb12a973850bcfec6eb8a","responseTime":33,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2495d67-6fe9-457b-8d30-184627fb71d6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d697f491-e397-43af-b911-ff0cd4b69197","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377842.8696804} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"5000258f0afdb12a973850bcfec6eb8a","responseTime":9,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"db91b194-456e-440d-8ff1-86d14ed825e3","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377842.8864696} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"5000258f0afdb12a973850bcfec6eb8a","responseTime":11,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2495d67-6fe9-457b-8d30-184627fb71d6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"bdaa7888-b002-464c-8681-61914347bf3a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377842.9036522} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"18260d2c-b1dc-4708-abc2-d0f681ff7a27","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377842.9040713} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"5000258f0afdb12a973850bcfec6eb8a","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2495d67-6fe9-457b-8d30-184627fb71d6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2495d67-6fe9-457b-8d30-184627fb71d6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:22.903627366Z"}]},"request_id":"439bb23d-4522-4c1d-ba83-5a3f4b070e84","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377842.9122293} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"5000258f0afdb12a973850bcfec6eb8a","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"5000258f0afdb12a973850bcfec6eb8a"} gateway-1 | {"time_local":"03/Sep/2024:15:37:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.300","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5000258f0afdb12a973850bcfec6eb8a"} device-1 | {"level":"info","message":"POST /devices? 201 253ms","method":"POST","requestID":"5000258f0afdb12a973850bcfec6eb8a","responseTime":253,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0Mn0.p8r9CnmiYiPDseSqs9xyvogk282iWsqQOiVZr4QuZXs","level":"info","message":"auth send jwt","requestID":"5ee3cfd4aa7bc3892b116fcdcfc749c8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5ee3cfd4aa7bc3892b116fcdcfc749c8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"5ee3cfd4aa7bc3892b116fcdcfc749c8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":4,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:22Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":4,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.796522,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"5ee3cfd4aa7bc3892b116fcdcfc749c8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377842,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0Mn0.p8r9CnmiYiPDseSqs9xyvogk282iWsqQOiVZr4QuZXs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5ee3cfd4aa7bc3892b116fcdcfc749c8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7f0629d-4184-4485-b2af-41b8353d4ab7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"b6ba7896-c5c5-436d-b29d-3a40f4377fcb","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377842.9684665} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"5ee3cfd4aa7bc3892b116fcdcfc749c8","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a6562b09-e4a0-4b15-9982-d805ca2437b8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377842.9787164} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"5ee3cfd4aa7bc3892b116fcdcfc749c8","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7f0629d-4184-4485-b2af-41b8353d4ab7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"27216277-aa91-4377-af90-2fef2f5a99e4","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377842.9950163} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3b6b11e4-8385-4b94-b02a-79ce40428f42","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377842.9954526} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"5ee3cfd4aa7bc3892b116fcdcfc749c8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7f0629d-4184-4485-b2af-41b8353d4ab7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7f0629d-4184-4485-b2af-41b8353d4ab7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:22.994998256Z"}]},"request_id":"ef7dd490-dd53-4285-8980-50db7c1fd4be","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377843.0089614} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"5ee3cfd4aa7bc3892b116fcdcfc749c8","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"5ee3cfd4aa7bc3892b116fcdcfc749c8"} gateway-1 | {"time_local":"03/Sep/2024:15:37:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.076","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5ee3cfd4aa7bc3892b116fcdcfc749c8"} device-1 | {"level":"info","message":"POST /devices? 201 70ms","method":"POST","requestID":"5ee3cfd4aa7bc3892b116fcdcfc749c8","responseTime":70,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"73279f9f01e888ef9a66fe1b7fc78a7a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"73279f9f01e888ef9a66fe1b7fc78a7a","responseTime":3,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3e3b823a2c21ec93c8b917cc6ce3779a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"3e3b823a2c21ec93c8b917cc6ce3779a","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"03/Sep/2024:15:37:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/f2495d67-6fe9-457b-8d30-184627fb71d6/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.010","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"73279f9f01e888ef9a66fe1b7fc78a7a"} device-1 | {"level":"info","message":"OPTIONS /devices/f2495d67-6fe9-457b-8d30-184627fb71d6/websocket 200 2ms","method":"OPTIONS","requestID":"73279f9f01e888ef9a66fe1b7fc78a7a","responseTime":2,"status":200,"url":"/devices/f2495d67-6fe9-457b-8d30-184627fb71d6/websocket"} gateway-1 | {"time_local":"03/Sep/2024:15:37:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e7f0629d-4184-4485-b2af-41b8353d4ab7/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.013","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"3e3b823a2c21ec93c8b917cc6ce3779a"} device-1 | {"level":"info","message":"OPTIONS /devices/e7f0629d-4184-4485-b2af-41b8353d4ab7/websocket 200 1ms","method":"OPTIONS","requestID":"3e3b823a2c21ec93c8b917cc6ce3779a","responseTime":1,"status":200,"url":"/devices/e7f0629d-4184-4485-b2af-41b8353d4ab7/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0NX0.rJ2e2k2obt6SbsOt8SxvmUdT2uqGZBF5RDWz1gUU_Pk","level":"info","message":"auth send jwt","requestID":"cfa541ae023a8b7349ab04efb5bd3831"} authentication-1 | {"level":"info","message":"GET /auth 200 13ms","method":"GET","requestID":"cfa541ae023a8b7349ab04efb5bd3831","responseTime":13,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0NX0.rJ2e2k2obt6SbsOt8SxvmUdT2uqGZBF5RDWz1gUU_Pk","level":"info","message":"auth send jwt","requestID":"9ef6e7484d982950c752c45bc7357e45"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"cfa541ae023a8b7349ab04efb5bd3831"} authentication-1 | {"level":"info","message":"GET /auth 200 12ms","method":"GET","requestID":"9ef6e7484d982950c752c45bc7357e45","responseTime":12,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"9ef6e7484d982950c752c45bc7357e45"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":5,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:25Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":5,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.135356,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:25Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2495d67-6fe9-457b-8d30-184627fb71d6","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"cfa541ae023a8b7349ab04efb5bd3831","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/f2495d67-6fe9-457b-8d30-184627fb71d6","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377845,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0NX0.rJ2e2k2obt6SbsOt8SxvmUdT2uqGZBF5RDWz1gUU_Pk"} authorization-1 | {"level":"info","message":"POST /authorize 200 16ms","method":"POST","requestID":"cfa541ae023a8b7349ab04efb5bd3831","responseTime":16,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":6,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:25Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":6,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.087115,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:25Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e7f0629d-4184-4485-b2af-41b8353d4ab7","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9ef6e7484d982950c752c45bc7357e45","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/e7f0629d-4184-4485-b2af-41b8353d4ab7","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377845,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0NX0.rJ2e2k2obt6SbsOt8SxvmUdT2uqGZBF5RDWz1gUU_Pk"} authorization-1 | {"level":"info","message":"POST /authorize 200 15ms","method":"POST","requestID":"9ef6e7484d982950c752c45bc7357e45","responseTime":15,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"9ef6e7484d982950c752c45bc7357e45"} gateway-1 | {"time_local":"03/Sep/2024:15:37:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/e7f0629d-4184-4485-b2af-41b8353d4ab7/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.071","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"9ef6e7484d982950c752c45bc7357e45"} device-1 | {"level":"info","message":"POST /devices/e7f0629d-4184-4485-b2af-41b8353d4ab7/websocket 200 52ms","method":"POST","requestID":"9ef6e7484d982950c752c45bc7357e45","responseTime":52,"status":200,"url":"/devices/e7f0629d-4184-4485-b2af-41b8353d4ab7/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"cfa541ae023a8b7349ab04efb5bd3831"} gateway-1 | {"time_local":"03/Sep/2024:15:37:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/f2495d67-6fe9-457b-8d30-184627fb71d6/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.092","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"cfa541ae023a8b7349ab04efb5bd3831"} device-1 | {"level":"info","message":"POST /devices/f2495d67-6fe9-457b-8d30-184627fb71d6/websocket 200 77ms","method":"POST","requestID":"cfa541ae023a8b7349ab04efb5bd3831","responseTime":77,"status":200,"url":"/devices/f2495d67-6fe9-457b-8d30-184627fb71d6/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/e7f0629d-4184-4485-b2af-41b8353d4ab7' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/f2495d67-6fe9-457b-8d30-184627fb71d6' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0NX0.rJ2e2k2obt6SbsOt8SxvmUdT2uqGZBF5RDWz1gUU_Pk","level":"info","message":"auth send jwt","requestID":"4fc04a45269c754ed549526c3355a659"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"4fc04a45269c754ed549526c3355a659","responseTime":8,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4fc04a45269c754ed549526c3355a659"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":7,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:25Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":7,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.224895,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2495d67-6fe9-457b-8d30-184627fb71d6","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"4fc04a45269c754ed549526c3355a659","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/f2495d67-6fe9-457b-8d30-184627fb71d6","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377845,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0NX0.rJ2e2k2obt6SbsOt8SxvmUdT2uqGZBF5RDWz1gUU_Pk"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"4fc04a45269c754ed549526c3355a659","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2495d67-6fe9-457b-8d30-184627fb71d6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2495d67-6fe9-457b-8d30-184627fb71d6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:22.903627366Z"}]},"request_id":"5b199cac-b469-4cf2-b7ed-c96ce8c51853","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377845.6042922} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"4fc04a45269c754ed549526c3355a659","responseTime":9,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4fc04a45269c754ed549526c3355a659"} gateway-1 | {"time_local":"03/Sep/2024:15:37:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f2495d67-6fe9-457b-8d30-184627fb71d6? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4fc04a45269c754ed549526c3355a659"} device-1 | {"level":"info","message":"GET /devices/f2495d67-6fe9-457b-8d30-184627fb71d6? 200 42ms","method":"GET","requestID":"4fc04a45269c754ed549526c3355a659","responseTime":42,"status":200,"url":"/devices/f2495d67-6fe9-457b-8d30-184627fb71d6?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0NX0.rJ2e2k2obt6SbsOt8SxvmUdT2uqGZBF5RDWz1gUU_Pk","level":"info","message":"auth send jwt","requestID":"f5f76c471c617bb1a10d0fad6abe56b7"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"f5f76c471c617bb1a10d0fad6abe56b7","responseTime":8,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f5f76c471c617bb1a10d0fad6abe56b7"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":8,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:25Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":8,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.992108,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e7f0629d-4184-4485-b2af-41b8353d4ab7","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"f5f76c471c617bb1a10d0fad6abe56b7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/e7f0629d-4184-4485-b2af-41b8353d4ab7","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377845,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0NX0.rJ2e2k2obt6SbsOt8SxvmUdT2uqGZBF5RDWz1gUU_Pk"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f5f76c471c617bb1a10d0fad6abe56b7","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7f0629d-4184-4485-b2af-41b8353d4ab7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7f0629d-4184-4485-b2af-41b8353d4ab7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:22.994998256Z"}]},"request_id":"1383a1c0-60bb-4436-b2ce-28f84c25b741","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377845.6571484} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"f5f76c471c617bb1a10d0fad6abe56b7","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f5f76c471c617bb1a10d0fad6abe56b7"} gateway-1 | {"time_local":"03/Sep/2024:15:37:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e7f0629d-4184-4485-b2af-41b8353d4ab7? 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":"f5f76c471c617bb1a10d0fad6abe56b7"} device-1 | {"level":"info","message":"GET /devices/e7f0629d-4184-4485-b2af-41b8353d4ab7? 200 28ms","method":"GET","requestID":"f5f76c471c617bb1a10d0fad6abe56b7","responseTime":28,"status":200,"url":"/devices/e7f0629d-4184-4485-b2af-41b8353d4ab7?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0NX0.rJ2e2k2obt6SbsOt8SxvmUdT2uqGZBF5RDWz1gUU_Pk","level":"info","message":"auth send jwt","requestID":"87ae225e483b96bd9cb077d96f050478"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"87ae225e483b96bd9cb077d96f050478","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"87ae225e483b96bd9cb077d96f050478"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":9,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:25Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":9,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.788295,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:25Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"87ae225e483b96bd9cb077d96f050478","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377845,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0NX0.rJ2e2k2obt6SbsOt8SxvmUdT2uqGZBF5RDWz1gUU_Pk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"87ae225e483b96bd9cb077d96f050478","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cdcb0d0-3875-4af1-b83b-40c0cd0d5b85"},"level":"info","message":"Attempting to run experiment","requestID":"87ae225e483b96bd9cb077d96f050478"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cdcb0d0-3875-4af1-b83b-40c0cd0d5b85"},"level":"info","message":"Attempting to book experiment","requestID":"87ae225e483b96bd9cb077d96f050478"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cdcb0d0-3875-4af1-b83b-40c0cd0d5b85"},"level":"info","message":"Successfully booked experiment","requestID":"87ae225e483b96bd9cb077d96f050478"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6b946800-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6b94b620-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":10,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:25Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":10,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.898835,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:25Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":11,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2495d67-6fe9-457b-8d30-184627fb71d6","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6b946800-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/f2495d67-6fe9-457b-8d30-184627fb71d6","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377845,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0NX0.rJ2e2k2obt6SbsOt8SxvmUdT2uqGZBF5RDWz1gUU_Pk"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"6b946800-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":11,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.529172,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e7f0629d-4184-4485-b2af-41b8353d4ab7","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6b94b620-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/e7f0629d-4184-4485-b2af-41b8353d4ab7","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377845,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0NX0.rJ2e2k2obt6SbsOt8SxvmUdT2uqGZBF5RDWz1gUU_Pk"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6b94b620-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2495d67-6fe9-457b-8d30-184627fb71d6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2495d67-6fe9-457b-8d30-184627fb71d6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:22.903627366Z"}]},"request_id":"26020e8e-05af-4ff8-a2b1-760b0e848383","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377845.9020996} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"6b946800-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7f0629d-4184-4485-b2af-41b8353d4ab7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7f0629d-4184-4485-b2af-41b8353d4ab7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:22.994998256Z"}]},"request_id":"52cb2fcf-bd62-4c3b-8ab2-17af91b52f19","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377845.9049182} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6b94b620-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6b946800-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/f2495d67-6fe9-457b-8d30-184627fb71d6? 200 25ms","method":"GET","requestID":"6b946800-6a0a-11ef-9b41-2363e6623fc8","responseTime":25,"status":200,"url":"/devices/f2495d67-6fe9-457b-8d30-184627fb71d6?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6b94b620-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/e7f0629d-4184-4485-b2af-41b8353d4ab7? 200 25ms","method":"GET","requestID":"6b94b620-6a0a-11ef-9b41-2363e6623fc8","responseTime":25,"status":200,"url":"/devices/e7f0629d-4184-4485-b2af-41b8353d4ab7?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cdcb0d0-3875-4af1-b83b-40c0cd0d5b85"},"level":"info","message":"Setting up experiment","requestID":"87ae225e483b96bd9cb077d96f050478"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cdcb0d0-3875-4af1-b83b-40c0cd0d5b85"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"87ae225e483b96bd9cb077d96f050478"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cdcb0d0-3875-4af1-b83b-40c0cd0d5b85"},"level":"info","message":"Successfully locked booking for experiment","requestID":"87ae225e483b96bd9cb077d96f050478"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cdcb0d0-3875-4af1-b83b-40c0cd0d5b85"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"87ae225e483b96bd9cb077d96f050478"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cdcb0d0-3875-4af1-b83b-40c0cd0d5b85"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"87ae225e483b96bd9cb077d96f050478"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cdcb0d0-3875-4af1-b83b-40c0cd0d5b85"},"level":"info","message":"Attempting to update booking for experiment","requestID":"87ae225e483b96bd9cb077d96f050478"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cdcb0d0-3875-4af1-b83b-40c0cd0d5b85"},"level":"info","message":"Successfully updated booking for experiment","requestID":"87ae225e483b96bd9cb077d96f050478"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cdcb0d0-3875-4af1-b83b-40c0cd0d5b85"},"level":"info","message":"Successfully set up experiment","requestID":"87ae225e483b96bd9cb077d96f050478"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6ba44680-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6ba46d90-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":12,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:25Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":12,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.980797,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:25Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":13,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:25Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6ba4bbb0-6a0a-11ef-9b41-2363e6623fc8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cdcb0d0-3875-4af1-b83b-40c0cd0d5b85"},"level":"info","message":"Successfully running experiment","requestID":"87ae225e483b96bd9cb077d96f050478"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2495d67-6fe9-457b-8d30-184627fb71d6","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6ba44680-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/f2495d67-6fe9-457b-8d30-184627fb71d6","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377845,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0NX0.rJ2e2k2obt6SbsOt8SxvmUdT2uqGZBF5RDWz1gUU_Pk"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"6ba44680-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":13,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.985183,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e7f0629d-4184-4485-b2af-41b8353d4ab7","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6ba46d90-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/e7f0629d-4184-4485-b2af-41b8353d4ab7","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377845,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0NX0.rJ2e2k2obt6SbsOt8SxvmUdT2uqGZBF5RDWz1gUU_Pk"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"6ba46d90-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":14,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:26Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":14,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.488725,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:26Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2495d67-6fe9-457b-8d30-184627fb71d6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bef5e52e-5de0-42ba-bff3-be3390304249","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377846.012693} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2495d67-6fe9-457b-8d30-184627fb71d6","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6ba4bbb0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f2495d67-6fe9-457b-8d30-184627fb71d6","object_type":"device","rebac_allow":false,"scope_allow":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":"6ba4bbb0-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7f0629d-4184-4485-b2af-41b8353d4ab7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7f0629d-4184-4485-b2af-41b8353d4ab7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:22.994998256Z"}]},"request_id":"fa8a4679-6739-4ab7-b222-1fa1407bc0fd","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377846.0189865} authorization-1 | {"level":"info","message":"POST /relations/query 200 13ms","method":"POST","requestID":"6ba46d90-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2495d67-6fe9-457b-8d30-184627fb71d6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2495d67-6fe9-457b-8d30-184627fb71d6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:22.903627366Z"}]},"request_id":"477feb9c-024f-4a26-be1f-089f5267ab15","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377846.0269983} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"6ba44680-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6ba4bbb0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/f2495d67-6fe9-457b-8d30-184627fb71d6/signaling 200 37ms","method":"POST","requestID":"6ba4bbb0-6a0a-11ef-9b41-2363e6623fc8","responseTime":37,"status":200,"url":"/devices/f2495d67-6fe9-457b-8d30-184627fb71d6/signaling"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5cdcb0d0-3875-4af1-b83b-40c0cd0d5b85#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5cdcb0d0-3875-4af1-b83b-40c0cd0d5b85","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"7dfa4bd4-47d0-4578-b56d-d471bb8c83b6","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377846.0359485} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4522522d-2c2c-4e6a-8574-eeb4906182c1","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377846.0364113} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6bab4b60-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6ba46d90-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/e7f0629d-4184-4485-b2af-41b8353d4ab7? 200 49ms","method":"GET","requestID":"6ba46d90-6a0a-11ef-9b41-2363e6623fc8","responseTime":49,"status":200,"url":"/devices/e7f0629d-4184-4485-b2af-41b8353d4ab7?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6ba44680-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/f2495d67-6fe9-457b-8d30-184627fb71d6? 200 51ms","method":"GET","requestID":"6ba44680-6a0a-11ef-9b41-2363e6623fc8","responseTime":51,"status":200,"url":"/devices/f2495d67-6fe9-457b-8d30-184627fb71d6?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 35ms","method":"POST","requestID":"87ae225e483b96bd9cb077d96f050478","responseTime":35,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":15,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:26Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7f0629d-4184-4485-b2af-41b8353d4ab7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a4653721-f5a0-475c-b7dd-5a084052bc47","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377846.0496573} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6bacf910-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":15,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.65954,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e7f0629d-4184-4485-b2af-41b8353d4ab7","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6bab4b60-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e7f0629d-4184-4485-b2af-41b8353d4ab7","object_type":"device","rebac_allow":false,"scope_allow":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":"6bab4b60-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":16,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:26Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6bab4b60-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/e7f0629d-4184-4485-b2af-41b8353d4ab7/signaling 200 20ms","method":"POST","requestID":"6bab4b60-6a0a-11ef-9b41-2363e6623fc8","responseTime":20,"status":200,"url":"/devices/e7f0629d-4184-4485-b2af-41b8353d4ab7/signaling"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2495d67-6fe9-457b-8d30-184627fb71d6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b0e50b64-3779-4b5b-9819-66e04bd6c542","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377846.0590603} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":16,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.096074,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2495d67-6fe9-457b-8d30-184627fb71d6","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6bacf910-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f2495d67-6fe9-457b-8d30-184627fb71d6","object_type":"device","rebac_allow":false,"scope_allow":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":"6bacf910-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/5cdcb0d0-3875-4af1-b83b-40c0cd0d5b85","user":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"87ae225e483b96bd9cb077d96f050478"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6bacf910-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/f2495d67-6fe9-457b-8d30-184627fb71d6/signaling 200 17ms","method":"POST","requestID":"6bacf910-6a0a-11ef-9b41-2363e6623fc8","responseTime":17,"status":200,"url":"/devices/f2495d67-6fe9-457b-8d30-184627fb71d6/signaling"} gateway-1 | {"time_local":"03/Sep/2024:15:37:26 +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":"87ae225e483b96bd9cb077d96f050478"} experiment-1 | {"level":"info","message":"POST /experiments? 201 361ms","method":"POST","requestID":"87ae225e483b96bd9cb077d96f050478","responseTime":361,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6bb07b80-6a0a-11ef-9b41-2363e6623fc8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0Nn0.4o1AYpPwEW8jhEMRfjrldF8s2fdtPKOYs4Kyj-XI8po","level":"info","message":"auth send jwt","requestID":"ccf9ce597afa448b022308226bced677"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":17,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:26Z"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ccf9ce597afa448b022308226bced677","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ccf9ce597afa448b022308226bced677"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7f0629d-4184-4485-b2af-41b8353d4ab7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"892d525f-4e41-49d4-afec-de93a8646dfd","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377846.0786633} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":17,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.73418,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e7f0629d-4184-4485-b2af-41b8353d4ab7","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6bb07b80-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e7f0629d-4184-4485-b2af-41b8353d4ab7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6bb07b80-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":18,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:26Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":18,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.893999,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:26Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6bb07b80-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/e7f0629d-4184-4485-b2af-41b8353d4ab7/signaling 200 12ms","method":"POST","requestID":"6bb07b80-6a0a-11ef-9b41-2363e6623fc8","responseTime":12,"status":200,"url":"/devices/e7f0629d-4184-4485-b2af-41b8353d4ab7/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2495d67-6fe9-457b-8d30-184627fb71d6","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"ccf9ce597afa448b022308226bced677","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/f2495d67-6fe9-457b-8d30-184627fb71d6","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377846,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0Nn0.4o1AYpPwEW8jhEMRfjrldF8s2fdtPKOYs4Kyj-XI8po"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cdcb0d0-3875-4af1-b83b-40c0cd0d5b85"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"87ae225e483b96bd9cb077d96f050478"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ccf9ce597afa448b022308226bced677","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cdcb0d0-3875-4af1-b83b-40c0cd0d5b85"},"level":"info","message":"Building connection plan","requestID":"87ae225e483b96bd9cb077d96f050478"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"fc0f79fa-c003-4df3-b4dd-3c45d1d61582"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"1ed0da39-0ba2-44a0-a485-aff9266ee747"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"a487a070-222c-4134-98ca-37996705d50f"}]},"level":"info","message":"Built pairwise service configurations","requestID":"87ae225e483b96bd9cb077d96f050478"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/f2495d67-6fe9-457b-8d30-184627fb71d6"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/e7f0629d-4184-4485-b2af-41b8353d4ab7"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"87ae225e483b96bd9cb077d96f050478"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2495d67-6fe9-457b-8d30-184627fb71d6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2495d67-6fe9-457b-8d30-184627fb71d6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:22.903627366Z"}]},"request_id":"bc39760d-67f0-4e06-a165-6d93cea90cba","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377846.0910985} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ccf9ce597afa448b022308226bced677","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"6bb42500-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ccf9ce597afa448b022308226bced677"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":19,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:26Z"} gateway-1 | {"time_local":"03/Sep/2024:15:37:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f2495d67-6fe9-457b-8d30-184627fb71d6? 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":"ccf9ce597afa448b022308226bced677"} device-1 | {"level":"info","message":"GET /devices/f2495d67-6fe9-457b-8d30-184627fb71d6? 200 24ms","method":"GET","requestID":"ccf9ce597afa448b022308226bced677","responseTime":24,"status":200,"url":"/devices/f2495d67-6fe9-457b-8d30-184627fb71d6?"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":19,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.940525,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6bb42500-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377845,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0NX0.rJ2e2k2obt6SbsOt8SxvmUdT2uqGZBF5RDWz1gUU_Pk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6bb42500-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0Nn0.4o1AYpPwEW8jhEMRfjrldF8s2fdtPKOYs4Kyj-XI8po","level":"info","message":"auth send jwt","requestID":"b40b8ae87f077a51e7a9fee5bd82a27b"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"b40b8ae87f077a51e7a9fee5bd82a27b","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b40b8ae87f077a51e7a9fee5bd82a27b"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":20,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:26Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":20,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.058861,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e7f0629d-4184-4485-b2af-41b8353d4ab7","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"b40b8ae87f077a51e7a9fee5bd82a27b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/e7f0629d-4184-4485-b2af-41b8353d4ab7","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377846,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0Nn0.4o1AYpPwEW8jhEMRfjrldF8s2fdtPKOYs4Kyj-XI8po"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b40b8ae87f077a51e7a9fee5bd82a27b","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7f0629d-4184-4485-b2af-41b8353d4ab7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7f0629d-4184-4485-b2af-41b8353d4ab7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:22.994998256Z"}]},"request_id":"75b0e30e-afd4-49a2-995b-c6c54391c0c4","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377846.1245039} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"b40b8ae87f077a51e7a9fee5bd82a27b","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","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%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"632ab128-2060-4734-9bf3-d083ac1e86bb","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377846.1270397} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b40b8ae87f077a51e7a9fee5bd82a27b"} gateway-1 | {"time_local":"03/Sep/2024:15:37:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e7f0629d-4184-4485-b2af-41b8353d4ab7? 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":"b40b8ae87f077a51e7a9fee5bd82a27b"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7507776a-e159-430e-aa4a-7f2038e576ad","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377846.1315086} device-1 | {"level":"info","message":"GET /devices/e7f0629d-4184-4485-b2af-41b8353d4ab7? 200 19ms","method":"GET","requestID":"b40b8ae87f077a51e7a9fee5bd82a27b","responseTime":19,"status":200,"url":"/devices/e7f0629d-4184-4485-b2af-41b8353d4ab7?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"6bb42500-6a0a-11ef-9b41-2363e6623fc8","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"6bb42500-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"6bb42500-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/4bacf6a2-4929-40fe-973e-d5da3c0d8eb7'","requestID":"6bb42500-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/4bacf6a2-4929-40fe-973e-d5da3c0d8eb7'","requestID":"6bb42500-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"6bb42500-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 58ms","method":"POST","requestID":"6bb42500-6a0a-11ef-9b41-2363e6623fc8","responseTime":58,"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":"6bb42500-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/4bacf6a2-4929-40fe-973e-d5da3c0d8eb7","device":"f2495d67-6fe9-457b-8d30-184627fb71d6","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/4bacf6a2-4929-40fe-973e-d5da3c0d8eb7","device":"e7f0629d-4184-4485-b2af-41b8353d4ab7","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/5cdcb0d0-3875-4af1-b83b-40c0cd0d5b85"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"87ae225e483b96bd9cb077d96f050478"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6bc27ce0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":21,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:26Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2495d67-6fe9-457b-8d30-184627fb71d6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"002dc5bf-7529-49e8-8e48-f5e4b71877f8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377846.1955476} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":21,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.222676,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2495d67-6fe9-457b-8d30-184627fb71d6","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6bc27ce0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f2495d67-6fe9-457b-8d30-184627fb71d6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"6bc27ce0-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6bc27ce0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/f2495d67-6fe9-457b-8d30-184627fb71d6/signaling 200 10ms","method":"POST","requestID":"6bc27ce0-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/devices/f2495d67-6fe9-457b-8d30-184627fb71d6/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6bc49fc0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":22,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:26Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7f0629d-4184-4485-b2af-41b8353d4ab7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"779e6f66-4229-4ff3-b86f-982d178e7b37","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377846.2094448} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":22,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.638583,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e7f0629d-4184-4485-b2af-41b8353d4ab7","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6bc49fc0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e7f0629d-4184-4485-b2af-41b8353d4ab7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6bc49fc0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6bc49fc0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/e7f0629d-4184-4485-b2af-41b8353d4ab7/signaling 200 11ms","method":"POST","requestID":"6bc49fc0-6a0a-11ef-9b41-2363e6623fc8","responseTime":11,"status":200,"url":"/devices/e7f0629d-4184-4485-b2af-41b8353d4ab7/signaling"} device-1 | {"device":"f2495d67-6fe9-457b-8d30-184627fb71d6","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"f2495d67-6fe9-457b-8d30-184627fb71d6","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"e7f0629d-4184-4485-b2af-41b8353d4ab7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"e7f0629d-4184-4485-b2af-41b8353d4ab7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 6105769687261740386 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:vh9d\r\na=ice-pwd:s4T4TnacpIowo4fjj4uSAVW/\r\na=ice-options:trickle\r\na=fingerprint:sha-256 4A:59:2C:2D:BB:E8:38:C4:2F:97:B6:4E:C0:A0:E5:CF:D3:4F:BB:9E:1D:75:67:AF:D8:F3:A7:77:DE:7F:6C:36\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"e7f0629d-4184-4485-b2af-41b8353d4ab7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 6877923215971029185 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:KBF6\r\na=ice-pwd:kNJvZ2YPFLzc6Z286wGCB1tw\r\na=ice-options:trickle\r\na=fingerprint:sha-256 9B:92:17:3F:31:F5:50:17:92:16:B8:37:E0:45:DC:46:1F:CA:89:6A:22:E8:B0:71:93:62:8F:D4:DE:11:F8:8D\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"f2495d67-6fe9-457b-8d30-184627fb71d6","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:12750100 1 udp 2113937151 52571f37-408d-40a6-96e2-2967fd0832d5.local 44337 typ host generation 0 ufrag KBF6 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"f2495d67-6fe9-457b-8d30-184627fb71d6","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/f2495d67-6fe9-457b-8d30-184627fb71d6'"} device-1 | {"content":{"candidate":"candidate:2040223733 1 udp 2113937151 48912f69-c01b-4d98-add9-6dc37aff7111.local 41308 typ host generation 0 ufrag vh9d network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"e7f0629d-4184-4485-b2af-41b8353d4ab7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1539692920 1 udp 1677729535 141.24.211.56 41308 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag vh9d network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"e7f0629d-4184-4485-b2af-41b8353d4ab7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2481531911 1 udp 1677729535 141.24.211.56 44337 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag KBF6 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"f2495d67-6fe9-457b-8d30-184627fb71d6","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"e7f0629d-4184-4485-b2af-41b8353d4ab7","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/e7f0629d-4184-4485-b2af-41b8353d4ab7'"} device-1 | {"device":"f2495d67-6fe9-457b-8d30-184627fb71d6","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"f2495d67-6fe9-457b-8d30-184627fb71d6","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/4bacf6a2-4929-40fe-973e-d5da3c0d8eb7' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4bacf6a2-4929-40fe-973e-d5da3c0d8eb7","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"e7f0629d-4184-4485-b2af-41b8353d4ab7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"e7f0629d-4184-4485-b2af-41b8353d4ab7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"f2495d67-6fe9-457b-8d30-184627fb71d6","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"f2495d67-6fe9-457b-8d30-184627fb71d6","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d23d5a90ec8f8b06264ac7444f15cfed","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d23d5a90ec8f8b06264ac7444f15cfed","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/f2495d67-6fe9-457b-8d30-184627fb71d6"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/e7f0629d-4184-4485-b2af-41b8353d4ab7"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/4bacf6a2-4929-40fe-973e-d5da3c0d8eb7"}}},"level":"info","message":"received a callback","requestID":"d23d5a90ec8f8b06264ac7444f15cfed"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 12ms","method":"POST","requestID":"d23d5a90ec8f8b06264ac7444f15cfed","responseTime":12,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:37:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch","requestID":"d23d5a90ec8f8b06264ac7444f15cfed"} device-1 | {"data":{"peerconnection":"4bacf6a2-4929-40fe-973e-d5da3c0d8eb7","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"4bacf6a2-4929-40fe-973e-d5da3c0d8eb7","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/4bacf6a2-4929-40fe-973e-d5da3c0d8eb7' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4bacf6a2-4929-40fe-973e-d5da3c0d8eb7","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e144279ad653d1129f04a77cc4d47f97","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"e144279ad653d1129f04a77cc4d47f97","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/f2495d67-6fe9-457b-8d30-184627fb71d6"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e7f0629d-4184-4485-b2af-41b8353d4ab7"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/4bacf6a2-4929-40fe-973e-d5da3c0d8eb7"}}},"level":"info","message":"received a callback","requestID":"e144279ad653d1129f04a77cc4d47f97"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"6bd84ed0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":23,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:26Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4bacf6a2-4929-40fe-973e-d5da3c0d8eb7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e8e1f0e0-a3cf-4922-96d7-e7aab3ad9652","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377846.3385508} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":23,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.625297,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/4bacf6a2-4929-40fe-973e-d5da3c0d8eb7","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6bd84ed0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/4bacf6a2-4929-40fe-973e-d5da3c0d8eb7","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":"6bd84ed0-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"6bd84ed0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /peerconnections/4bacf6a2-4929-40fe-973e-d5da3c0d8eb7 200 11ms","method":"GET","requestID":"6bd84ed0-6a0a-11ef-9b41-2363e6623fc8","responseTime":11,"status":200,"url":"/peerconnections/4bacf6a2-4929-40fe-973e-d5da3c0d8eb7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0Nn0.4o1AYpPwEW8jhEMRfjrldF8s2fdtPKOYs4Kyj-XI8po","level":"info","message":"auth send jwt","requestID":"f1a02e85d52a1ac9de1c3ae3d04ad7e1"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f1a02e85d52a1ac9de1c3ae3d04ad7e1","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/5cdcb0d0-3875-4af1-b83b-40c0cd0d5b85","requestID":"f1a02e85d52a1ac9de1c3ae3d04ad7e1"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":24,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:26Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":24,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.711251,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:26Z"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 48ms","method":"POST","requestID":"e144279ad653d1129f04a77cc4d47f97","responseTime":48,"status":200,"url":"/callbacks/experiment"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5cdcb0d0-3875-4af1-b83b-40c0cd0d5b85","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"f1a02e85d52a1ac9de1c3ae3d04ad7e1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/5cdcb0d0-3875-4af1-b83b-40c0cd0d5b85","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377846,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0Nn0.4o1AYpPwEW8jhEMRfjrldF8s2fdtPKOYs4Kyj-XI8po"} gateway-1 | {"time_local":"03/Sep/2024:15:37:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch","requestID":"e144279ad653d1129f04a77cc4d47f97"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f1a02e85d52a1ac9de1c3ae3d04ad7e1","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6bdede80-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":25,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:26Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2495d67-6fe9-457b-8d30-184627fb71d6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"78486f0b-707b-4030-940a-a2b2cb359bcd","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377846.3818095} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/5cdcb0d0-3875-4af1-b83b-40c0cd0d5b85","requestID":"f1a02e85d52a1ac9de1c3ae3d04ad7e1"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":25,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.397675,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2495d67-6fe9-457b-8d30-184627fb71d6","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6bdede80-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f2495d67-6fe9-457b-8d30-184627fb71d6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6bdede80-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"03/Sep/2024:15:37:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/5cdcb0d0-3875-4af1-b83b-40c0cd0d5b85 HTTP/1.1","status": "200","body_bytes_sent":"880","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f1a02e85d52a1ac9de1c3ae3d04ad7e1"} experiment-1 | {"level":"info","message":"GET /experiments/5cdcb0d0-3875-4af1-b83b-40c0cd0d5b85 200 18ms","method":"GET","requestID":"f1a02e85d52a1ac9de1c3ae3d04ad7e1","responseTime":18,"status":200,"url":"/experiments/5cdcb0d0-3875-4af1-b83b-40c0cd0d5b85"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6bdede80-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/f2495d67-6fe9-457b-8d30-184627fb71d6/signaling 200 11ms","method":"POST","requestID":"6bdede80-6a0a-11ef-9b41-2363e6623fc8","responseTime":11,"status":200,"url":"/devices/f2495d67-6fe9-457b-8d30-184627fb71d6/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6be10160-6a0a-11ef-9b41-2363e6623fc8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0Nn0.4o1AYpPwEW8jhEMRfjrldF8s2fdtPKOYs4Kyj-XI8po","level":"info","message":"auth send jwt","requestID":"df44c5419a740705bb2d9174690f4bf4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"df44c5419a740705bb2d9174690f4bf4","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":26,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:26Z"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/5cdcb0d0-3875-4af1-b83b-40c0cd0d5b85","requestID":"df44c5419a740705bb2d9174690f4bf4"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7f0629d-4184-4485-b2af-41b8353d4ab7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c0d5f94b-dd19-4511-9c28-c41e108e2ab2","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377846.3947241} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":26,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.140911,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e7f0629d-4184-4485-b2af-41b8353d4ab7","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6be10160-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e7f0629d-4184-4485-b2af-41b8353d4ab7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6be10160-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":27,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:26Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":27,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.621912,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:26Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6be10160-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5cdcb0d0-3875-4af1-b83b-40c0cd0d5b85","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"df44c5419a740705bb2d9174690f4bf4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/5cdcb0d0-3875-4af1-b83b-40c0cd0d5b85","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377846,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0Nn0.4o1AYpPwEW8jhEMRfjrldF8s2fdtPKOYs4Kyj-XI8po"} device-1 | {"level":"info","message":"POST /devices/e7f0629d-4184-4485-b2af-41b8353d4ab7/signaling 200 9ms","method":"POST","requestID":"6be10160-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/devices/e7f0629d-4184-4485-b2af-41b8353d4ab7/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"df44c5419a740705bb2d9174690f4bf4","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cdcb0d0-3875-4af1-b83b-40c0cd0d5b85"},"level":"info","message":"Attempting to finish experiment","requestID":"df44c5419a740705bb2d9174690f4bf4"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"6be3c080-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":28,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:26Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":28,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.25519,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:26Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/4bacf6a2-4929-40fe-973e-d5da3c0d8eb7","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6be3c080-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:http://localhost/peerconnections/4bacf6a2-4929-40fe-973e-d5da3c0d8eb7","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377846,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0Nn0.4o1AYpPwEW8jhEMRfjrldF8s2fdtPKOYs4Kyj-XI8po"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6be3c080-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/4bacf6a2-4929-40fe-973e-d5da3c0d8eb7","device":"e7f0629d-4184-4485-b2af-41b8353d4ab7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/4bacf6a2-4929-40fe-973e-d5da3c0d8eb7","device":"f2495d67-6fe9-457b-8d30-184627fb71d6","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/4bacf6a2-4929-40fe-973e-d5da3c0d8eb7' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/4bacf6a2-4929-40fe-973e-d5da3c0d8eb7' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4bacf6a2-4929-40fe-973e-d5da3c0d8eb7","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d48f650f809a95d885aa840848f8c934","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"d48f650f809a95d885aa840848f8c934","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/f2495d67-6fe9-457b-8d30-184627fb71d6"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/e7f0629d-4184-4485-b2af-41b8353d4ab7"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/4bacf6a2-4929-40fe-973e-d5da3c0d8eb7"}}},"level":"info","message":"received a callback","requestID":"d48f650f809a95d885aa840848f8c934"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f012a4efe9d92fddf4cc6882f51eec09","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f012a4efe9d92fddf4cc6882f51eec09","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/f2495d67-6fe9-457b-8d30-184627fb71d6"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/e7f0629d-4184-4485-b2af-41b8353d4ab7"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/4bacf6a2-4929-40fe-973e-d5da3c0d8eb7"}}},"level":"info","message":"received a callback","requestID":"f012a4efe9d92fddf4cc6882f51eec09"} device-1 | {"data":{"peerconnection":"4bacf6a2-4929-40fe-973e-d5da3c0d8eb7","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4bacf6a2-4929-40fe-973e-d5da3c0d8eb7': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4bacf6a2-4929-40fe-973e-d5da3c0d8eb7","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"fd5992c3-8519-449d-bd1b-58c40b5de3ff","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377846.441145} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a431bb75-518f-4ab4-a8f8-b08fa9f99bfe","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377846.4413385} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"6be3c080-6a0a-11ef-9b41-2363e6623fc8","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"6be3c080-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"DELETE /peerconnections/4bacf6a2-4929-40fe-973e-d5da3c0d8eb7 204 50ms","method":"DELETE","requestID":"6be3c080-6a0a-11ef-9b41-2363e6623fc8","responseTime":50,"status":204,"url":"/peerconnections/4bacf6a2-4929-40fe-973e-d5da3c0d8eb7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cdcb0d0-3875-4af1-b83b-40c0cd0d5b85"},"level":"info","message":"Successfully finished experiment","requestID":"df44c5419a740705bb2d9174690f4bf4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6bee6ee0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":29,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:26Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2495d67-6fe9-457b-8d30-184627fb71d6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4950a669-4554-4259-9f96-1cc0d0757839","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377846.486252} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":29,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.86286,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2495d67-6fe9-457b-8d30-184627fb71d6","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6bee6ee0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f2495d67-6fe9-457b-8d30-184627fb71d6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6bee6ee0-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6bee6ee0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/f2495d67-6fe9-457b-8d30-184627fb71d6/signaling 200 14ms","method":"POST","requestID":"6bee6ee0-6a0a-11ef-9b41-2363e6623fc8","responseTime":14,"status":200,"url":"/devices/f2495d67-6fe9-457b-8d30-184627fb71d6/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6bf15510-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5cdcb0d0-3875-4af1-b83b-40c0cd0d5b85': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5cdcb0d0-3875-4af1-b83b-40c0cd0d5b85","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"436390d6-50b6-4967-aa1b-cdce9d41bfdb","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377846.500822} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7f494794-55fd-4559-bef9-66c36ac055b8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377846.5012298} authorization-1 | {"level":"info","message":"POST /relations/update 200 27ms","method":"POST","requestID":"df44c5419a740705bb2d9174690f4bf4","responseTime":27,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":30,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:26Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":30,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":1.991446,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:26Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7f0629d-4184-4485-b2af-41b8353d4ab7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"210fd691-27b9-4ae7-9e5d-c955cf0ee32c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377846.5032868} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e7f0629d-4184-4485-b2af-41b8353d4ab7","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6bf15510-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e7f0629d-4184-4485-b2af-41b8353d4ab7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6bf15510-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6bf15510-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/e7f0629d-4184-4485-b2af-41b8353d4ab7/signaling 200 13ms","method":"POST","requestID":"6bf15510-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/devices/e7f0629d-4184-4485-b2af-41b8353d4ab7/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/5cdcb0d0-3875-4af1-b83b-40c0cd0d5b85","requestID":"df44c5419a740705bb2d9174690f4bf4"} gateway-1 | {"time_local":"03/Sep/2024:15:37:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/5cdcb0d0-3875-4af1-b83b-40c0cd0d5b85 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.190","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"df44c5419a740705bb2d9174690f4bf4"} experiment-1 | {"level":"info","message":"DELETE /experiments/5cdcb0d0-3875-4af1-b83b-40c0cd0d5b85 204 187ms","method":"DELETE","requestID":"df44c5419a740705bb2d9174690f4bf4","responseTime":187,"status":204,"url":"/experiments/5cdcb0d0-3875-4af1-b83b-40c0cd0d5b85"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 154ms","method":"POST","requestID":"d48f650f809a95d885aa840848f8c934","responseTime":154,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:37:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.158","http_referrer":"","http_user_agent":"node-fetch","requestID":"d48f650f809a95d885aa840848f8c934"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0Nn0.4o1AYpPwEW8jhEMRfjrldF8s2fdtPKOYs4Kyj-XI8po","level":"info","message":"auth send jwt","requestID":"c7c187e3274c0af1c24087b4b0c7de58"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 152ms","method":"POST","requestID":"f012a4efe9d92fddf4cc6882f51eec09","responseTime":152,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:37:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.159","http_referrer":"","http_user_agent":"node-fetch","requestID":"f012a4efe9d92fddf4cc6882f51eec09"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c7c187e3274c0af1c24087b4b0c7de58","responseTime":4,"status":200,"url":"/auth"} gateway-1 | {"time_local":"03/Sep/2024:15:37:26 +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.059","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"d8abfa24ca0a911eae004ce269e41e47"} gateway-1 | {"time_local":"03/Sep/2024:15:37:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2647","request_time":"1.049","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"83937ecdcb3cb0c3d371aebcfa4ccf3e"} device-1 | {"level":"info","message":"postDevices called","requestID":"c7c187e3274c0af1c24087b4b0c7de58"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":31,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:26Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":31,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.917928,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"c7c187e3274c0af1c24087b4b0c7de58","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377846,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0Nn0.4o1AYpPwEW8jhEMRfjrldF8s2fdtPKOYs4Kyj-XI8po"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c7c187e3274c0af1c24087b4b0c7de58","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/e7f0629d-4184-4485-b2af-41b8353d4ab7' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/f2495d67-6fe9-457b-8d30-184627fb71d6' 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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4d2834a-5e91-47fc-aa99-2b9daa49374c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e00f1e2b-4fba-4846-8278-57372b86f6df","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377846.6203895} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c7c187e3274c0af1c24087b4b0c7de58","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"14f127ac-7d9e-4e21-8827-b25dbf5d02a6","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377846.626326} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"c7c187e3274c0af1c24087b4b0c7de58","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4d2834a-5e91-47fc-aa99-2b9daa49374c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"84760ba3-83ad-483c-8a6c-88a861523b07","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377846.6365385} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c79d77af-5a9d-46ee-899e-4cc0c816e77b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377846.6369812} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"c7c187e3274c0af1c24087b4b0c7de58","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4d2834a-5e91-47fc-aa99-2b9daa49374c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4d2834a-5e91-47fc-aa99-2b9daa49374c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:26.636527999Z"}]},"request_id":"3a219e60-1309-4c5f-8413-71d1b7c23376","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377846.642112} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c7c187e3274c0af1c24087b4b0c7de58","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"c7c187e3274c0af1c24087b4b0c7de58"} gateway-1 | {"time_local":"03/Sep/2024:15:37:26 +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":"c7c187e3274c0af1c24087b4b0c7de58"} device-1 | {"level":"info","message":"POST /devices? 201 51ms","method":"POST","requestID":"c7c187e3274c0af1c24087b4b0c7de58","responseTime":51,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0Nn0.4o1AYpPwEW8jhEMRfjrldF8s2fdtPKOYs4Kyj-XI8po","level":"info","message":"auth send jwt","requestID":"ea531a1128d9f8c3db58cb2be23407f3"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ea531a1128d9f8c3db58cb2be23407f3","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ea531a1128d9f8c3db58cb2be23407f3"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":32,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:26Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":32,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.790047,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"ea531a1128d9f8c3db58cb2be23407f3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377846,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0Nn0.4o1AYpPwEW8jhEMRfjrldF8s2fdtPKOYs4Kyj-XI8po"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ea531a1128d9f8c3db58cb2be23407f3","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F50ff4b40-7385-4dc2-a941-28cba051cf50","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"617533dd-3ef3-4ddc-85de-2340cf695556","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377846.668832} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ea531a1128d9f8c3db58cb2be23407f3","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d48fbce5-9d29-44d1-b260-ca05ad3eaaab","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377846.673633} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"ea531a1128d9f8c3db58cb2be23407f3","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F50ff4b40-7385-4dc2-a941-28cba051cf50","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"530b55d6-a281-47ba-a467-59b1c649e1df","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377846.6892657} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a86d5bbe-479b-4643-9e51-980d4127fb5c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377846.6893613} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"ea531a1128d9f8c3db58cb2be23407f3","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F50ff4b40-7385-4dc2-a941-28cba051cf50","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F50ff4b40-7385-4dc2-a941-28cba051cf50","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:26.689252259Z"}]},"request_id":"dbb9b88d-bc45-4da3-83cc-a0f37b3f4fa1","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377846.6948245} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ea531a1128d9f8c3db58cb2be23407f3","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ea531a1128d9f8c3db58cb2be23407f3"} gateway-1 | {"time_local":"03/Sep/2024:15:37:26 +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":"ea531a1128d9f8c3db58cb2be23407f3"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"ea531a1128d9f8c3db58cb2be23407f3","responseTime":48,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0N30.rvvL053Zjbzk_KgHTwGXqKMPVcGSeDb6uIMQ6R97RKo","level":"info","message":"auth send jwt","requestID":"c65be3a75fd56e11103ad33c255e7ef1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c65be3a75fd56e11103ad33c255e7ef1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"c65be3a75fd56e11103ad33c255e7ef1"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":33,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:27Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":33,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.944784,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:27Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/50ff4b40-7385-4dc2-a941-28cba051cf50","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"c65be3a75fd56e11103ad33c255e7ef1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/50ff4b40-7385-4dc2-a941-28cba051cf50","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377847,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0N30.rvvL053Zjbzk_KgHTwGXqKMPVcGSeDb6uIMQ6R97RKo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c65be3a75fd56e11103ad33c255e7ef1","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F50ff4b40-7385-4dc2-a941-28cba051cf50","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F50ff4b40-7385-4dc2-a941-28cba051cf50","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:26.689252259Z"}]},"request_id":"c0243e79-772f-473a-abc8-226dd329177b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377847.247298} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c65be3a75fd56e11103ad33c255e7ef1","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"583a3a0c-9d86-42e0-ae17-c145249cf055","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377847.2559185} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"c65be3a75fd56e11103ad33c255e7ef1","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F50ff4b40-7385-4dc2-a941-28cba051cf50","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F50ff4b40-7385-4dc2-a941-28cba051cf50","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:26.689252259Z"}]},"request_id":"e313c1de-e8c0-49ee-baf9-2b722156586e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377847.2752109} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c65be3a75fd56e11103ad33c255e7ef1","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"c65be3a75fd56e11103ad33c255e7ef1"} device-1 | {"level":"info","message":"PATCH /devices/50ff4b40-7385-4dc2-a941-28cba051cf50 200 64ms","method":"PATCH","requestID":"c65be3a75fd56e11103ad33c255e7ef1","responseTime":64,"status":200,"url":"/devices/50ff4b40-7385-4dc2-a941-28cba051cf50"} gateway-1 | {"time_local":"03/Sep/2024:15:37:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/50ff4b40-7385-4dc2-a941-28cba051cf50 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.071","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"c65be3a75fd56e11103ad33c255e7ef1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0N30.rvvL053Zjbzk_KgHTwGXqKMPVcGSeDb6uIMQ6R97RKo","level":"info","message":"auth send jwt","requestID":"e0a5a403270b05db0a8802158a620b4d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e0a5a403270b05db0a8802158a620b4d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e0a5a403270b05db0a8802158a620b4d"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":34,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:27Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":34,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.266551,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:27Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/50ff4b40-7385-4dc2-a941-28cba051cf50","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"e0a5a403270b05db0a8802158a620b4d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/50ff4b40-7385-4dc2-a941-28cba051cf50","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377847,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0N30.rvvL053Zjbzk_KgHTwGXqKMPVcGSeDb6uIMQ6R97RKo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e0a5a403270b05db0a8802158a620b4d","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e0a5a403270b05db0a8802158a620b4d"} gateway-1 | {"time_local":"03/Sep/2024:15:37:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/50ff4b40-7385-4dc2-a941-28cba051cf50/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.029","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"e0a5a403270b05db0a8802158a620b4d"} device-1 | {"level":"info","message":"POST /devices/50ff4b40-7385-4dc2-a941-28cba051cf50/websocket 200 24ms","method":"POST","requestID":"e0a5a403270b05db0a8802158a620b4d","responseTime":24,"status":200,"url":"/devices/50ff4b40-7385-4dc2-a941-28cba051cf50/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/50ff4b40-7385-4dc2-a941-28cba051cf50' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"624e373600a0461323415453dd81ad3b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"624e373600a0461323415453dd81ad3b","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"03/Sep/2024:15:37:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c/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":"624e373600a0461323415453dd81ad3b"} device-1 | {"level":"info","message":"OPTIONS /devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c/websocket 200 1ms","method":"OPTIONS","requestID":"624e373600a0461323415453dd81ad3b","responseTime":1,"status":200,"url":"/devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0OH0.ZPrxx_5a-NYiUf_v0WhUnDs-s6WEdDYUbXwGF7ohn-M","level":"info","message":"auth send jwt","requestID":"0431f3366dc0d864ac29c408236021b0"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"0431f3366dc0d864ac29c408236021b0","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0431f3366dc0d864ac29c408236021b0"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":35,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:28Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":35,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.21648,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:28Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"0431f3366dc0d864ac29c408236021b0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377848,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0OH0.ZPrxx_5a-NYiUf_v0WhUnDs-s6WEdDYUbXwGF7ohn-M"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0431f3366dc0d864ac29c408236021b0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0431f3366dc0d864ac29c408236021b0"} gateway-1 | {"time_local":"03/Sep/2024:15:37:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.033","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"0431f3366dc0d864ac29c408236021b0"} device-1 | {"level":"info","message":"POST /devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c/websocket 200 25ms","method":"POST","requestID":"0431f3366dc0d864ac29c408236021b0","responseTime":25,"status":200,"url":"/devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0OH0.ZPrxx_5a-NYiUf_v0WhUnDs-s6WEdDYUbXwGF7ohn-M","level":"info","message":"auth send jwt","requestID":"d8a9b05fb4be2e63110fb8b17ec47588"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"d8a9b05fb4be2e63110fb8b17ec47588","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d8a9b05fb4be2e63110fb8b17ec47588"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":36,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:28Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":36,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.346776,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"d8a9b05fb4be2e63110fb8b17ec47588","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377848,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0OH0.ZPrxx_5a-NYiUf_v0WhUnDs-s6WEdDYUbXwGF7ohn-M"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d8a9b05fb4be2e63110fb8b17ec47588","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4d2834a-5e91-47fc-aa99-2b9daa49374c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4d2834a-5e91-47fc-aa99-2b9daa49374c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:26.636527999Z"}]},"request_id":"9b9b7fa6-6826-4371-aae3-53a863dd015c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377848.7901852} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"d8a9b05fb4be2e63110fb8b17ec47588","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d8a9b05fb4be2e63110fb8b17ec47588"} gateway-1 | {"time_local":"03/Sep/2024:15:37:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.032","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d8a9b05fb4be2e63110fb8b17ec47588"} device-1 | {"level":"info","message":"GET /devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c? 200 24ms","method":"GET","requestID":"d8a9b05fb4be2e63110fb8b17ec47588","responseTime":24,"status":200,"url":"/devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0OH0.ZPrxx_5a-NYiUf_v0WhUnDs-s6WEdDYUbXwGF7ohn-M","level":"info","message":"auth send jwt","requestID":"6fced14b029a78e63718a3495eac5e77"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"6fced14b029a78e63718a3495eac5e77","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6fced14b029a78e63718a3495eac5e77"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":37,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:28Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":37,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.332286,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/50ff4b40-7385-4dc2-a941-28cba051cf50","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6fced14b029a78e63718a3495eac5e77","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/50ff4b40-7385-4dc2-a941-28cba051cf50","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377848,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0OH0.ZPrxx_5a-NYiUf_v0WhUnDs-s6WEdDYUbXwGF7ohn-M"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6fced14b029a78e63718a3495eac5e77","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F50ff4b40-7385-4dc2-a941-28cba051cf50","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F50ff4b40-7385-4dc2-a941-28cba051cf50","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:26.689252259Z"}]},"request_id":"d44af23b-8b9c-41e1-98cf-f29eff0c28be","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377848.8246171} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"6fced14b029a78e63718a3495eac5e77","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6fced14b029a78e63718a3495eac5e77"} gateway-1 | {"time_local":"03/Sep/2024:15:37:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/50ff4b40-7385-4dc2-a941-28cba051cf50? 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":"6fced14b029a78e63718a3495eac5e77"} device-1 | {"level":"info","message":"GET /devices/50ff4b40-7385-4dc2-a941-28cba051cf50? 200 22ms","method":"GET","requestID":"6fced14b029a78e63718a3495eac5e77","responseTime":22,"status":200,"url":"/devices/50ff4b40-7385-4dc2-a941-28cba051cf50?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0OH0.ZPrxx_5a-NYiUf_v0WhUnDs-s6WEdDYUbXwGF7ohn-M","level":"info","message":"auth send jwt","requestID":"d539196ebea667053e1255a485270db8"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d539196ebea667053e1255a485270db8","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"d539196ebea667053e1255a485270db8"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":38,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:28Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":38,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.197103,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:28Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"d539196ebea667053e1255a485270db8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377848,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0OH0.ZPrxx_5a-NYiUf_v0WhUnDs-s6WEdDYUbXwGF7ohn-M"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d539196ebea667053e1255a485270db8","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7bdcaca0-b907-42d5-8458-ae7d821852b6"},"level":"info","message":"Attempting to run experiment","requestID":"d539196ebea667053e1255a485270db8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7bdcaca0-b907-42d5-8458-ae7d821852b6"},"level":"info","message":"Attempting to book experiment","requestID":"d539196ebea667053e1255a485270db8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7bdcaca0-b907-42d5-8458-ae7d821852b6"},"level":"info","message":"Successfully booked experiment","requestID":"d539196ebea667053e1255a485270db8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6d60c390-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6d6111b0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":39,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:28Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":40,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:28Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":39,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.563832,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6d60c390-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377848,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0OH0.ZPrxx_5a-NYiUf_v0WhUnDs-s6WEdDYUbXwGF7ohn-M"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6d60c390-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":40,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.055116,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/50ff4b40-7385-4dc2-a941-28cba051cf50","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6d6111b0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/50ff4b40-7385-4dc2-a941-28cba051cf50","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377848,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0OH0.ZPrxx_5a-NYiUf_v0WhUnDs-s6WEdDYUbXwGF7ohn-M"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6d6111b0-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4d2834a-5e91-47fc-aa99-2b9daa49374c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4d2834a-5e91-47fc-aa99-2b9daa49374c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:26.636527999Z"}]},"request_id":"28a6c80f-132b-40f0-bc46-5fdd16caf23f","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377848.9156795} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6d60c390-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F50ff4b40-7385-4dc2-a941-28cba051cf50","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F50ff4b40-7385-4dc2-a941-28cba051cf50","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:26.689252259Z"}]},"request_id":"473854b0-77b1-43b0-98b8-6c480f135608","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377848.9170697} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6d6111b0-6a0a-11ef-9b41-2363e6623fc8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6d60c390-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c? 200 19ms","method":"GET","requestID":"6d60c390-6a0a-11ef-9b41-2363e6623fc8","responseTime":19,"status":200,"url":"/devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6d6111b0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/50ff4b40-7385-4dc2-a941-28cba051cf50? 200 18ms","method":"GET","requestID":"6d6111b0-6a0a-11ef-9b41-2363e6623fc8","responseTime":18,"status":200,"url":"/devices/50ff4b40-7385-4dc2-a941-28cba051cf50?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7bdcaca0-b907-42d5-8458-ae7d821852b6"},"level":"info","message":"Setting up experiment","requestID":"d539196ebea667053e1255a485270db8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7bdcaca0-b907-42d5-8458-ae7d821852b6"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"d539196ebea667053e1255a485270db8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7bdcaca0-b907-42d5-8458-ae7d821852b6"},"level":"info","message":"Successfully locked booking for experiment","requestID":"d539196ebea667053e1255a485270db8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7bdcaca0-b907-42d5-8458-ae7d821852b6"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"d539196ebea667053e1255a485270db8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7bdcaca0-b907-42d5-8458-ae7d821852b6"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"d539196ebea667053e1255a485270db8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7bdcaca0-b907-42d5-8458-ae7d821852b6"},"level":"info","message":"Attempting to update booking for experiment","requestID":"d539196ebea667053e1255a485270db8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7bdcaca0-b907-42d5-8458-ae7d821852b6"},"level":"info","message":"Successfully updated booking for experiment","requestID":"d539196ebea667053e1255a485270db8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7bdcaca0-b907-42d5-8458-ae7d821852b6"},"level":"info","message":"Successfully set up experiment","requestID":"d539196ebea667053e1255a485270db8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6d6cf890-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6d6d46b0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6d6dbbe0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":41,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:28Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":41,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.590838,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:28Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":42,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:28Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7bdcaca0-b907-42d5-8458-ae7d821852b6"},"level":"info","message":"Successfully running experiment","requestID":"d539196ebea667053e1255a485270db8"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6d6cf890-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377848,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0OH0.ZPrxx_5a-NYiUf_v0WhUnDs-s6WEdDYUbXwGF7ohn-M"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"6d6cf890-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":42,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.385866,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/50ff4b40-7385-4dc2-a941-28cba051cf50","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6d6d46b0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/50ff4b40-7385-4dc2-a941-28cba051cf50","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377848,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0OH0.ZPrxx_5a-NYiUf_v0WhUnDs-s6WEdDYUbXwGF7ohn-M"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"6d6d46b0-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":43,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:28Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":43,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.635157,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:29Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4d2834a-5e91-47fc-aa99-2b9daa49374c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f8c47546-4229-4b2f-9f42-a59dd0b30368","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377849.0001104} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4d2834a-5e91-47fc-aa99-2b9daa49374c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4d2834a-5e91-47fc-aa99-2b9daa49374c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:26.636527999Z"}]},"request_id":"f4f19b70-4d91-4fb2-bb12-cccd082e8e75","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377849.0027204} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6d6dbbe0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c","object_type":"device","rebac_allow":false,"scope_allow":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":"6d6dbbe0-6a0a-11ef-9b41-2363e6623fc8","responseTime":14,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 12ms","method":"POST","requestID":"6d6cf890-6a0a-11ef-9b41-2363e6623fc8","responseTime":12,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F50ff4b40-7385-4dc2-a941-28cba051cf50","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F50ff4b40-7385-4dc2-a941-28cba051cf50","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:26.689252259Z"}]},"request_id":"3445dc80-3da5-4ec5-b873-4fdbcc4cce8e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377849.0119321} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6d6d46b0-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6d6dbbe0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c/signaling 200 24ms","method":"POST","requestID":"6d6dbbe0-6a0a-11ef-9b41-2363e6623fc8","responseTime":24,"status":200,"url":"/devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6d6cf890-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c? 200 33ms","method":"GET","requestID":"6d6cf890-6a0a-11ef-9b41-2363e6623fc8","responseTime":33,"status":200,"url":"/devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6d7228b0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6d6d46b0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/50ff4b40-7385-4dc2-a941-28cba051cf50? 200 35ms","method":"GET","requestID":"6d6d46b0-6a0a-11ef-9b41-2363e6623fc8","responseTime":35,"status":200,"url":"/devices/50ff4b40-7385-4dc2-a941-28cba051cf50?"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":44,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:29Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F50ff4b40-7385-4dc2-a941-28cba051cf50","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f5511b29-188d-4160-94f9-c61f86a223b9","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377849.0253992} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":44,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.5854,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:29Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6d733a20-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/50ff4b40-7385-4dc2-a941-28cba051cf50","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6d7228b0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/50ff4b40-7385-4dc2-a941-28cba051cf50","object_type":"device","rebac_allow":false,"scope_allow":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":"6d7228b0-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"63ce0d47-f81e-44af-8b42-e011f4b530da","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377849.0270958} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7bdcaca0-b907-42d5-8458-ae7d821852b6#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7bdcaca0-b907-42d5-8458-ae7d821852b6","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"b49fc0d5-63a1-4935-8648-fca4848ab0e2","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377849.0276253} authorization-1 | {"level":"info","message":"POST /relations/update 200 29ms","method":"POST","requestID":"d539196ebea667053e1255a485270db8","responseTime":29,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6d7228b0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/50ff4b40-7385-4dc2-a941-28cba051cf50/signaling 200 13ms","method":"POST","requestID":"6d7228b0-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/devices/50ff4b40-7385-4dc2-a941-28cba051cf50/signaling"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":45,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:29Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4d2834a-5e91-47fc-aa99-2b9daa49374c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9e22ee55-ac46-4ec2-90be-a774b4b6a128","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377849.0368927} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":45,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.709942,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6d733a20-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c","object_type":"device","rebac_allow":false,"scope_allow":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":"6d733a20-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6d733a20-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c/signaling 200 19ms","method":"POST","requestID":"6d733a20-6a0a-11ef-9b41-2363e6623fc8","responseTime":19,"status":200,"url":"/devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/7bdcaca0-b907-42d5-8458-ae7d821852b6","user":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"d539196ebea667053e1255a485270db8"} gateway-1 | {"time_local":"03/Sep/2024:15:37:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"811","request_time":"0.211","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d539196ebea667053e1255a485270db8"} experiment-1 | {"level":"info","message":"POST /experiments? 201 203ms","method":"POST","requestID":"d539196ebea667053e1255a485270db8","responseTime":203,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6d770ab0-6a0a-11ef-9b41-2363e6623fc8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0OX0.7OGM_xbUL2-HsmKbafJoiRhxUuzxqtZeRJn33n3ewwg","level":"info","message":"auth send jwt","requestID":"01b9a0f1c4a35467bccfac1a9dfce64e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"01b9a0f1c4a35467bccfac1a9dfce64e","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":46,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:29Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"01b9a0f1c4a35467bccfac1a9dfce64e"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F50ff4b40-7385-4dc2-a941-28cba051cf50","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ad846f8a-09a4-4715-8df7-82b6c4d6a048","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377849.0575898} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":46,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.310553,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:29Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":47,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/50ff4b40-7385-4dc2-a941-28cba051cf50","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6d770ab0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/50ff4b40-7385-4dc2-a941-28cba051cf50","object_type":"device","rebac_allow":false,"scope_allow":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":"6d770ab0-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":47,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.727285,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"01b9a0f1c4a35467bccfac1a9dfce64e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377849,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0OX0.7OGM_xbUL2-HsmKbafJoiRhxUuzxqtZeRJn33n3ewwg"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"01b9a0f1c4a35467bccfac1a9dfce64e","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6d770ab0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/50ff4b40-7385-4dc2-a941-28cba051cf50/signaling 200 15ms","method":"POST","requestID":"6d770ab0-6a0a-11ef-9b41-2363e6623fc8","responseTime":15,"status":200,"url":"/devices/50ff4b40-7385-4dc2-a941-28cba051cf50/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7bdcaca0-b907-42d5-8458-ae7d821852b6"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"d539196ebea667053e1255a485270db8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7bdcaca0-b907-42d5-8458-ae7d821852b6"},"level":"info","message":"Building connection plan","requestID":"d539196ebea667053e1255a485270db8"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4d2834a-5e91-47fc-aa99-2b9daa49374c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4d2834a-5e91-47fc-aa99-2b9daa49374c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:26.636527999Z"}]},"request_id":"64f590f1-7522-42bf-8376-39bbc21078ab","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377849.068243} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"31be14d1-56b5-4769-a3ed-791534860036"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"b126617a-5e31-4741-9106-9301d8cede7f"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"37bc963a-aed6-4796-8dda-72e0b6b0bda6"}]},"level":"info","message":"Built pairwise service configurations","requestID":"d539196ebea667053e1255a485270db8"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/50ff4b40-7385-4dc2-a941-28cba051cf50"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"d539196ebea667053e1255a485270db8"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"01b9a0f1c4a35467bccfac1a9dfce64e","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"6d7a3f00-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"01b9a0f1c4a35467bccfac1a9dfce64e"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":48,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:29Z"} gateway-1 | {"time_local":"03/Sep/2024:15:37:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c? 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":"01b9a0f1c4a35467bccfac1a9dfce64e"} device-1 | {"level":"info","message":"GET /devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c? 200 21ms","method":"GET","requestID":"01b9a0f1c4a35467bccfac1a9dfce64e","responseTime":21,"status":200,"url":"/devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c?"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":48,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.343017,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6d7a3f00-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377848,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0OH0.ZPrxx_5a-NYiUf_v0WhUnDs-s6WEdDYUbXwGF7ohn-M"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6d7a3f00-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0OX0.7OGM_xbUL2-HsmKbafJoiRhxUuzxqtZeRJn33n3ewwg","level":"info","message":"auth send jwt","requestID":"27c5cccb490720cedb342d611fa7f6e4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"27c5cccb490720cedb342d611fa7f6e4","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"27c5cccb490720cedb342d611fa7f6e4"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":49,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:29Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":49,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.167385,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/50ff4b40-7385-4dc2-a941-28cba051cf50","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"27c5cccb490720cedb342d611fa7f6e4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/50ff4b40-7385-4dc2-a941-28cba051cf50","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377849,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg0OX0.7OGM_xbUL2-HsmKbafJoiRhxUuzxqtZeRJn33n3ewwg"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"27c5cccb490720cedb342d611fa7f6e4","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","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%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"a0a6619e-d2c4-4364-a5d8-30b6e68e615f","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377849.0929177} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"41fd2c4c-9a8d-4f19-b159-bf81c5d568f4","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377849.0933194} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"6d7a3f00-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F50ff4b40-7385-4dc2-a941-28cba051cf50","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F50ff4b40-7385-4dc2-a941-28cba051cf50","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:26.689252259Z"}]},"request_id":"ff5986ac-e771-4b8b-915c-7b26ddac1952","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377849.100444} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"27c5cccb490720cedb342d611fa7f6e4","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"6d7a3f00-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"6d7a3f00-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/396a797b-07a3-49fe-8835-87a4c5f2d6f6'","requestID":"6d7a3f00-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/396a797b-07a3-49fe-8835-87a4c5f2d6f6'","requestID":"6d7a3f00-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"6d7a3f00-6a0a-11ef-9b41-2363e6623fc8"} 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":"6d7a3f00-6a0a-11ef-9b41-2363e6623fc8","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":"27c5cccb490720cedb342d611fa7f6e4"} gateway-1 | {"time_local":"03/Sep/2024:15:37:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/50ff4b40-7385-4dc2-a941-28cba051cf50? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.035","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"27c5cccb490720cedb342d611fa7f6e4"} device-1 | {"level":"info","message":"GET /devices/50ff4b40-7385-4dc2-a941-28cba051cf50? 200 28ms","method":"GET","requestID":"27c5cccb490720cedb342d611fa7f6e4","responseTime":28,"status":200,"url":"/devices/50ff4b40-7385-4dc2-a941-28cba051cf50?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"6d7a3f00-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/396a797b-07a3-49fe-8835-87a4c5f2d6f6","device":"c4d2834a-5e91-47fc-aa99-2b9daa49374c","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/7bdcaca0-b907-42d5-8458-ae7d821852b6"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"d539196ebea667053e1255a485270db8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6d85d7c0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":50,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:29Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4d2834a-5e91-47fc-aa99-2b9daa49374c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"731f1256-ddfe-475b-b3d6-f5351efa7717","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377849.1534176} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":50,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.921209,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6d85d7c0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"6d85d7c0-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"device":"c4d2834a-5e91-47fc-aa99-2b9daa49374c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"c4d2834a-5e91-47fc-aa99-2b9daa49374c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6d85d7c0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c/signaling 200 13ms","method":"POST","requestID":"6d85d7c0-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 6694955238697058498 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:D1TG\r\na=ice-pwd:OkHMCGc2doP8VGI0uDxTYxOc\r\na=ice-options:trickle\r\na=fingerprint:sha-256 DE:AD:0B:FA:24:2D:D1:9C:00:15:0F:96:A3:36:E7:5D:14:13:E9:C6:A1:6D:B5:40:00:EA:60:65:DC:39:51:9B\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"c4d2834a-5e91-47fc-aa99-2b9daa49374c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6d886fd0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c'"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":51,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:29Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F50ff4b40-7385-4dc2-a941-28cba051cf50","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"91a3560d-2750-4c00-bffc-c333d42433a5","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377849.1705563} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":51,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.551318,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/50ff4b40-7385-4dc2-a941-28cba051cf50","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6d886fd0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/50ff4b40-7385-4dc2-a941-28cba051cf50","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6d886fd0-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6d886fd0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/50ff4b40-7385-4dc2-a941-28cba051cf50/signaling 200 10ms","method":"POST","requestID":"6d886fd0-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/devices/50ff4b40-7385-4dc2-a941-28cba051cf50/signaling"} device-1 | {"device":"c4d2834a-5e91-47fc-aa99-2b9daa49374c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"50ff4b40-7385-4dc2-a941-28cba051cf50","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":"396a797b-07a3-49fe-8835-87a4c5f2d6f6","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"50ff4b40-7385-4dc2-a941-28cba051cf50","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":"50ff4b40-7385-4dc2-a941-28cba051cf50","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":"50ff4b40-7385-4dc2-a941-28cba051cf50","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":"50ff4b40-7385-4dc2-a941-28cba051cf50","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/396a797b-07a3-49fe-8835-87a4c5f2d6f6' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"396a797b-07a3-49fe-8835-87a4c5f2d6f6","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"12536dc276f505b1917d7c5a3700ea2c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"12536dc276f505b1917d7c5a3700ea2c","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":"connecting","url":"http://localhost/devices/50ff4b40-7385-4dc2-a941-28cba051cf50"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/396a797b-07a3-49fe-8835-87a4c5f2d6f6"}}},"level":"info","message":"received a callback","requestID":"12536dc276f505b1917d7c5a3700ea2c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 14ms","method":"POST","requestID":"12536dc276f505b1917d7c5a3700ea2c","responseTime":14,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:37:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch","requestID":"12536dc276f505b1917d7c5a3700ea2c"} device-1 | {"content":{"candidate":"candidate:525304605 1 udp 2113937151 bebadbd3-3ee8-493c-a8dc-32d0dd99fe53.local 60043 typ host generation 0 ufrag D1TG network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"c4d2834a-5e91-47fc-aa99-2b9daa49374c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2355372558 1 udp 1677729535 141.24.211.56 60043 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag D1TG network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"c4d2834a-5e91-47fc-aa99-2b9daa49374c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:843618812 1 udp 33562623 141.24.210.113 54103 typ relay raddr 141.24.211.56 rport 60043 generation 0 ufrag D1TG network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"c4d2834a-5e91-47fc-aa99-2b9daa49374c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"c4d2834a-5e91-47fc-aa99-2b9daa49374c","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/c4d2834a-5e91-47fc-aa99-2b9daa49374c'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c'"} device-1 | {"data":{"peerconnection":"396a797b-07a3-49fe-8835-87a4c5f2d6f6","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"50ff4b40-7385-4dc2-a941-28cba051cf50","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":"c4d2834a-5e91-47fc-aa99-2b9daa49374c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"50ff4b40-7385-4dc2-a941-28cba051cf50","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":"396a797b-07a3-49fe-8835-87a4c5f2d6f6","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/396a797b-07a3-49fe-8835-87a4c5f2d6f6' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"396a797b-07a3-49fe-8835-87a4c5f2d6f6","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f2df696949b8698fb5394aa4774777e6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f2df696949b8698fb5394aa4774777e6","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/50ff4b40-7385-4dc2-a941-28cba051cf50"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/396a797b-07a3-49fe-8835-87a4c5f2d6f6"}}},"level":"info","message":"received a callback","requestID":"f2df696949b8698fb5394aa4774777e6"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"6ec44b30-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":52,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:31Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F396a797b-07a3-49fe-8835-87a4c5f2d6f6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"303de8f5-e817-4a57-8655-757f11ea7f41","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377851.242146} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":52,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.311583,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/396a797b-07a3-49fe-8835-87a4c5f2d6f6","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6ec44b30-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/396a797b-07a3-49fe-8835-87a4c5f2d6f6","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":"6ec44b30-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"6ec44b30-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /peerconnections/396a797b-07a3-49fe-8835-87a4c5f2d6f6 200 13ms","method":"GET","requestID":"6ec44b30-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/peerconnections/396a797b-07a3-49fe-8835-87a4c5f2d6f6"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 45ms","method":"POST","requestID":"f2df696949b8698fb5394aa4774777e6","responseTime":45,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:37:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch","requestID":"f2df696949b8698fb5394aa4774777e6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6eca1790-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":53,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:31Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F50ff4b40-7385-4dc2-a941-28cba051cf50","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b8d7829d-c9ae-47de-99aa-59afa1bec04b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377851.2785282} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":53,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.016677,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/50ff4b40-7385-4dc2-a941-28cba051cf50","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6eca1790-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/50ff4b40-7385-4dc2-a941-28cba051cf50","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"6eca1790-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6eca1790-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/50ff4b40-7385-4dc2-a941-28cba051cf50/signaling 200 12ms","method":"POST","requestID":"6eca1790-6a0a-11ef-9b41-2363e6623fc8","responseTime":12,"status":200,"url":"/devices/50ff4b40-7385-4dc2-a941-28cba051cf50/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6ecc6180-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":54,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:31Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4d2834a-5e91-47fc-aa99-2b9daa49374c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"60e3fcc9-b79c-409c-8aff-e8298220d16a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377851.294216} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":54,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.014651,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6ecc6180-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6ecc6180-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6ecc6180-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c/signaling 200 12ms","method":"POST","requestID":"6ecc6180-6a0a-11ef-9b41-2363e6623fc8","responseTime":12,"status":200,"url":"/devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1MX0.FOnRwsxWUlDStePl5Hy3f3GAGuK2c8bhFSjQnG6uMeg","level":"info","message":"auth send jwt","requestID":"6a9d45cc5fb17ed21ca8aa03e35d1a17"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6a9d45cc5fb17ed21ca8aa03e35d1a17","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/7bdcaca0-b907-42d5-8458-ae7d821852b6","requestID":"6a9d45cc5fb17ed21ca8aa03e35d1a17"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":55,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:31Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":55,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.88376,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/7bdcaca0-b907-42d5-8458-ae7d821852b6","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6a9d45cc5fb17ed21ca8aa03e35d1a17","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/7bdcaca0-b907-42d5-8458-ae7d821852b6","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377851,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1MX0.FOnRwsxWUlDStePl5Hy3f3GAGuK2c8bhFSjQnG6uMeg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6a9d45cc5fb17ed21ca8aa03e35d1a17","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/7bdcaca0-b907-42d5-8458-ae7d821852b6","requestID":"6a9d45cc5fb17ed21ca8aa03e35d1a17"} gateway-1 | {"time_local":"03/Sep/2024:15:37:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/7bdcaca0-b907-42d5-8458-ae7d821852b6 HTTP/1.1","status": "200","body_bytes_sent":"884","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6a9d45cc5fb17ed21ca8aa03e35d1a17"} experiment-1 | {"level":"info","message":"GET /experiments/7bdcaca0-b907-42d5-8458-ae7d821852b6 200 18ms","method":"GET","requestID":"6a9d45cc5fb17ed21ca8aa03e35d1a17","responseTime":18,"status":200,"url":"/experiments/7bdcaca0-b907-42d5-8458-ae7d821852b6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1MX0.FOnRwsxWUlDStePl5Hy3f3GAGuK2c8bhFSjQnG6uMeg","level":"info","message":"auth send jwt","requestID":"5e0fd2d1cb82ad2e6931643e2772f6c9"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"5e0fd2d1cb82ad2e6931643e2772f6c9","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/7bdcaca0-b907-42d5-8458-ae7d821852b6","requestID":"5e0fd2d1cb82ad2e6931643e2772f6c9"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":56,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:31Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":56,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.383313,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:31Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/7bdcaca0-b907-42d5-8458-ae7d821852b6","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"5e0fd2d1cb82ad2e6931643e2772f6c9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/7bdcaca0-b907-42d5-8458-ae7d821852b6","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377851,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1MX0.FOnRwsxWUlDStePl5Hy3f3GAGuK2c8bhFSjQnG6uMeg"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5e0fd2d1cb82ad2e6931643e2772f6c9","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7bdcaca0-b907-42d5-8458-ae7d821852b6"},"level":"info","message":"Attempting to finish experiment","requestID":"5e0fd2d1cb82ad2e6931643e2772f6c9"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"6ed6e8d0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":57,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:31Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":57,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.415207,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:31Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/396a797b-07a3-49fe-8835-87a4c5f2d6f6","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6ed6e8d0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:http://localhost/peerconnections/396a797b-07a3-49fe-8835-87a4c5f2d6f6","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377851,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1MX0.FOnRwsxWUlDStePl5Hy3f3GAGuK2c8bhFSjQnG6uMeg"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6ed6e8d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/396a797b-07a3-49fe-8835-87a4c5f2d6f6","device":"c4d2834a-5e91-47fc-aa99-2b9daa49374c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"50ff4b40-7385-4dc2-a941-28cba051cf50","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":"50ff4b40-7385-4dc2-a941-28cba051cf50","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":"50ff4b40-7385-4dc2-a941-28cba051cf50","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/396a797b-07a3-49fe-8835-87a4c5f2d6f6' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/396a797b-07a3-49fe-8835-87a4c5f2d6f6' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"396a797b-07a3-49fe-8835-87a4c5f2d6f6","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7a7291666f7037d0904fdf35f181be2a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F396a797b-07a3-49fe-8835-87a4c5f2d6f6': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F396a797b-07a3-49fe-8835-87a4c5f2d6f6","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"0130c6c9-e261-4335-aeb4-c049d6d29ac9","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377851.380319} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fb6f6022-a251-4e39-a36b-f34549a094da","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377851.3804438} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"7a7291666f7037d0904fdf35f181be2a","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"98fb82493473b06cf557dd6cf85e306f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"98fb82493473b06cf557dd6cf85e306f","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"6ed6e8d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":12,"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/50ff4b40-7385-4dc2-a941-28cba051cf50"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/396a797b-07a3-49fe-8835-87a4c5f2d6f6"}}},"level":"info","message":"received a callback","requestID":"7a7291666f7037d0904fdf35f181be2a"} 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/50ff4b40-7385-4dc2-a941-28cba051cf50"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/396a797b-07a3-49fe-8835-87a4c5f2d6f6"}}},"level":"info","message":"received a callback","requestID":"98fb82493473b06cf557dd6cf85e306f"} device-1 | {"data":{"peerconnection":"396a797b-07a3-49fe-8835-87a4c5f2d6f6","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"6ed6e8d0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"DELETE /peerconnections/396a797b-07a3-49fe-8835-87a4c5f2d6f6 204 45ms","method":"DELETE","requestID":"6ed6e8d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":45,"status":204,"url":"/peerconnections/396a797b-07a3-49fe-8835-87a4c5f2d6f6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7bdcaca0-b907-42d5-8458-ae7d821852b6"},"level":"info","message":"Successfully finished experiment","requestID":"5e0fd2d1cb82ad2e6931643e2772f6c9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6ee20c60-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":58,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:31Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F50ff4b40-7385-4dc2-a941-28cba051cf50","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f53d0947-eb3e-4641-99eb-5d73317510d7","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377851.4381273} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":58,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.231009,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/50ff4b40-7385-4dc2-a941-28cba051cf50","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6ee20c60-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/50ff4b40-7385-4dc2-a941-28cba051cf50","object_type":"device","rebac_allow":false,"scope_allow":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":"6ee20c60-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6ee20c60-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7bdcaca0-b907-42d5-8458-ae7d821852b6': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7bdcaca0-b907-42d5-8458-ae7d821852b6","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"ba1e7586-6372-4df9-9ad7-70cf1150910d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377851.4459956} device-1 | {"level":"info","message":"POST /devices/50ff4b40-7385-4dc2-a941-28cba051cf50/signaling 200 16ms","method":"POST","requestID":"6ee20c60-6a0a-11ef-9b41-2363e6623fc8","responseTime":16,"status":200,"url":"/devices/50ff4b40-7385-4dc2-a941-28cba051cf50/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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a3349ae4-c5e1-433a-bc86-b2793ffc8486","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377851.4466257} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"5e0fd2d1cb82ad2e6931643e2772f6c9","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6ee4f290-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":59,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:31Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4d2834a-5e91-47fc-aa99-2b9daa49374c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f677b6e5-0a05-4e04-9476-1bbb9d2715b7","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377851.4579568} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":59,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.938959,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6ee4f290-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c","object_type":"device","rebac_allow":false,"scope_allow":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":"6ee4f290-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6ee4f290-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c/signaling 200 19ms","method":"POST","requestID":"6ee4f290-6a0a-11ef-9b41-2363e6623fc8","responseTime":19,"status":200,"url":"/devices/c4d2834a-5e91-47fc-aa99-2b9daa49374c/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/7bdcaca0-b907-42d5-8458-ae7d821852b6","requestID":"5e0fd2d1cb82ad2e6931643e2772f6c9"} gateway-1 | {"time_local":"03/Sep/2024:15:37:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/7bdcaca0-b907-42d5-8458-ae7d821852b6 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":"5e0fd2d1cb82ad2e6931643e2772f6c9"} gateway-1 | {"time_local":"03/Sep/2024:15:37:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2989","request_time":"4.207","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"4dd279623f74e1f6694a2f1ccc652f28"} experiment-1 | {"level":"info","message":"DELETE /experiments/7bdcaca0-b907-42d5-8458-ae7d821852b6 204 192ms","method":"DELETE","requestID":"5e0fd2d1cb82ad2e6931643e2772f6c9","responseTime":192,"status":204,"url":"/experiments/7bdcaca0-b907-42d5-8458-ae7d821852b6"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 144ms","method":"POST","requestID":"7a7291666f7037d0904fdf35f181be2a","responseTime":144,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:37:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.152","http_referrer":"","http_user_agent":"node-fetch","requestID":"7a7291666f7037d0904fdf35f181be2a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 143ms","method":"POST","requestID":"98fb82493473b06cf557dd6cf85e306f","responseTime":143,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:37:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.151","http_referrer":"","http_user_agent":"node-fetch","requestID":"98fb82493473b06cf557dd6cf85e306f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1MX0.FOnRwsxWUlDStePl5Hy3f3GAGuK2c8bhFSjQnG6uMeg","level":"info","message":"auth send jwt","requestID":"11f949a6c2ce7cf232a440ab1be48d00"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"11f949a6c2ce7cf232a440ab1be48d00","responseTime":5,"status":200,"url":"/auth"} gateway-1 | {"time_local":"03/Sep/2024:15:37:31 +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.790","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"84704a81e2c714640f68eb65476e7d86"} device-1 | {"level":"info","message":"postDevices called","requestID":"11f949a6c2ce7cf232a440ab1be48d00"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/50ff4b40-7385-4dc2-a941-28cba051cf50' closed"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":60,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:31Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":60,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.940136,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"11f949a6c2ce7cf232a440ab1be48d00","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377851,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1MX0.FOnRwsxWUlDStePl5Hy3f3GAGuK2c8bhFSjQnG6uMeg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"11f949a6c2ce7cf232a440ab1be48d00","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/c4d2834a-5e91-47fc-aa99-2b9daa49374c' 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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa54dac71-bcf7-48f4-b227-7cc72b49d6cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"08a2ae19-3d21-4e60-8264-d10329a40b87","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377851.5573964} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"11f949a6c2ce7cf232a440ab1be48d00","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4dd5a1da-8430-493a-ba60-28a64529cefa","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377851.5632062} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"11f949a6c2ce7cf232a440ab1be48d00","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa54dac71-bcf7-48f4-b227-7cc72b49d6cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"93fd5b6f-0cc5-44d5-8ce4-2a00f4d0ae80","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377851.5725687} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"aa02b27f-a5c2-403d-bb53-1fec06860fc2","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377851.5726733} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"11f949a6c2ce7cf232a440ab1be48d00","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa54dac71-bcf7-48f4-b227-7cc72b49d6cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa54dac71-bcf7-48f4-b227-7cc72b49d6cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:31.572551923Z"}]},"request_id":"e0d63f45-6d9a-4e7a-a4ad-e24705d4c3f0","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377851.5776951} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"11f949a6c2ce7cf232a440ab1be48d00","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"11f949a6c2ce7cf232a440ab1be48d00"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"11f949a6c2ce7cf232a440ab1be48d00","responseTime":44,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"03/Sep/2024:15:37:31 +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":"11f949a6c2ce7cf232a440ab1be48d00"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1MX0.FOnRwsxWUlDStePl5Hy3f3GAGuK2c8bhFSjQnG6uMeg","level":"info","message":"auth send jwt","requestID":"79e943e1620cf344600804413491d958"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"79e943e1620cf344600804413491d958","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"79e943e1620cf344600804413491d958"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":61,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:31Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":61,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.658549,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"79e943e1620cf344600804413491d958","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377851,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1MX0.FOnRwsxWUlDStePl5Hy3f3GAGuK2c8bhFSjQnG6uMeg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"79e943e1620cf344600804413491d958","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F104f0f65-5458-407b-b1e9-ae4691e5c28f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e940a49e-7ef0-4347-afda-f1fdb6ba29a8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377851.6087804} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"79e943e1620cf344600804413491d958","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f2c652ab-61c1-4beb-84db-164d1434d272","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377851.6139827} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"79e943e1620cf344600804413491d958","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F104f0f65-5458-407b-b1e9-ae4691e5c28f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"2a127dd2-1d2c-4948-9718-72f9857fb970","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377851.6265342} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"78d8394e-e274-4aad-83bb-7e9fca330537","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377851.626731} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"79e943e1620cf344600804413491d958","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F104f0f65-5458-407b-b1e9-ae4691e5c28f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F104f0f65-5458-407b-b1e9-ae4691e5c28f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:31.626513611Z"}]},"request_id":"81c5e9a6-b4d7-44de-afaa-a3694e8de40b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377851.6316063} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"79e943e1620cf344600804413491d958","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"79e943e1620cf344600804413491d958"} gateway-1 | {"time_local":"03/Sep/2024:15:37:31 +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":"79e943e1620cf344600804413491d958"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"79e943e1620cf344600804413491d958","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1Mn0.pGXk8uzFwaZS2skeOCwGM-jRvR19ZM2b23nEGoaYCwU","level":"info","message":"auth send jwt","requestID":"3ec322b98ea9ad6db9dbc92f03c82e33"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"3ec322b98ea9ad6db9dbc92f03c82e33","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"3ec322b98ea9ad6db9dbc92f03c82e33"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":62,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:32Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":62,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.031671,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:32Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"3ec322b98ea9ad6db9dbc92f03c82e33","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377852,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1Mn0.pGXk8uzFwaZS2skeOCwGM-jRvR19ZM2b23nEGoaYCwU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3ec322b98ea9ad6db9dbc92f03c82e33","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa54dac71-bcf7-48f4-b227-7cc72b49d6cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa54dac71-bcf7-48f4-b227-7cc72b49d6cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:31.572551923Z"}]},"request_id":"32a9a66f-83d4-4845-bb50-1c8d729b720b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377852.1095328} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3ec322b98ea9ad6db9dbc92f03c82e33","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"41ea1ad3-bcfe-4529-8a9f-21ee4af5ee49","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377852.1171827} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"3ec322b98ea9ad6db9dbc92f03c82e33","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa54dac71-bcf7-48f4-b227-7cc72b49d6cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa54dac71-bcf7-48f4-b227-7cc72b49d6cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:31.572551923Z"}]},"request_id":"d23f8fc2-f7dc-4635-8e82-4a260b436a77","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377852.131567} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3ec322b98ea9ad6db9dbc92f03c82e33","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"3ec322b98ea9ad6db9dbc92f03c82e33"} gateway-1 | {"time_local":"03/Sep/2024:15:37:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.051","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"3ec322b98ea9ad6db9dbc92f03c82e33"} device-1 | {"level":"info","message":"PATCH /devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf 200 43ms","method":"PATCH","requestID":"3ec322b98ea9ad6db9dbc92f03c82e33","responseTime":43,"status":200,"url":"/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1Mn0.pGXk8uzFwaZS2skeOCwGM-jRvR19ZM2b23nEGoaYCwU","level":"info","message":"auth send jwt","requestID":"ad9341df3b3e05a54c0d4f31b0953230"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"ad9341df3b3e05a54c0d4f31b0953230","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"ad9341df3b3e05a54c0d4f31b0953230"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":63,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:32Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":63,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.119578,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:32Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"ad9341df3b3e05a54c0d4f31b0953230","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377852,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1Mn0.pGXk8uzFwaZS2skeOCwGM-jRvR19ZM2b23nEGoaYCwU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ad9341df3b3e05a54c0d4f31b0953230","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"ad9341df3b3e05a54c0d4f31b0953230"} device-1 | {"level":"info","message":"POST /devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf/websocket 200 26ms","method":"POST","requestID":"ad9341df3b3e05a54c0d4f31b0953230","responseTime":26,"status":200,"url":"/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf/websocket"} gateway-1 | {"time_local":"03/Sep/2024:15:37:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.034","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"ad9341df3b3e05a54c0d4f31b0953230"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"aaae1dfa4dcca4225f92bbf79703cc5a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"aaae1dfa4dcca4225f92bbf79703cc5a","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"03/Sep/2024:15:37:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/104f0f65-5458-407b-b1e9-ae4691e5c28f/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":"aaae1dfa4dcca4225f92bbf79703cc5a"} device-1 | {"level":"info","message":"OPTIONS /devices/104f0f65-5458-407b-b1e9-ae4691e5c28f/websocket 200 2ms","method":"OPTIONS","requestID":"aaae1dfa4dcca4225f92bbf79703cc5a","responseTime":2,"status":200,"url":"/devices/104f0f65-5458-407b-b1e9-ae4691e5c28f/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1M30.FjIAKP-w91dhYXPP5W3AC6HHL0GA4qI--RSu878FhHs","level":"info","message":"auth send jwt","requestID":"67bc90c57f256799bd95175a1f5cf940"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"67bc90c57f256799bd95175a1f5cf940","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"67bc90c57f256799bd95175a1f5cf940"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":64,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:33Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":64,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.28503,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:33Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/104f0f65-5458-407b-b1e9-ae4691e5c28f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"67bc90c57f256799bd95175a1f5cf940","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/104f0f65-5458-407b-b1e9-ae4691e5c28f","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377853,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1M30.FjIAKP-w91dhYXPP5W3AC6HHL0GA4qI--RSu878FhHs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"67bc90c57f256799bd95175a1f5cf940","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"67bc90c57f256799bd95175a1f5cf940"} gateway-1 | {"time_local":"03/Sep/2024:15:37:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/104f0f65-5458-407b-b1e9-ae4691e5c28f/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.040","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"67bc90c57f256799bd95175a1f5cf940"} device-1 | {"level":"info","message":"POST /devices/104f0f65-5458-407b-b1e9-ae4691e5c28f/websocket 200 31ms","method":"POST","requestID":"67bc90c57f256799bd95175a1f5cf940","responseTime":31,"status":200,"url":"/devices/104f0f65-5458-407b-b1e9-ae4691e5c28f/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/104f0f65-5458-407b-b1e9-ae4691e5c28f' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1M30.FjIAKP-w91dhYXPP5W3AC6HHL0GA4qI--RSu878FhHs","level":"info","message":"auth send jwt","requestID":"f2166cd6df69a849b700be45e43243f2"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f2166cd6df69a849b700be45e43243f2","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f2166cd6df69a849b700be45e43243f2"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":65,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:33Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":65,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.41816,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"f2166cd6df69a849b700be45e43243f2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377853,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1M30.FjIAKP-w91dhYXPP5W3AC6HHL0GA4qI--RSu878FhHs"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f2166cd6df69a849b700be45e43243f2","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa54dac71-bcf7-48f4-b227-7cc72b49d6cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa54dac71-bcf7-48f4-b227-7cc72b49d6cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:31.572551923Z"}]},"request_id":"86afdccc-6941-4443-9525-a76a90096e01","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377853.7503934} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f2166cd6df69a849b700be45e43243f2","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f2166cd6df69a849b700be45e43243f2"} gateway-1 | {"time_local":"03/Sep/2024:15:37:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.029","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f2166cd6df69a849b700be45e43243f2"} device-1 | {"level":"info","message":"GET /devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf? 200 23ms","method":"GET","requestID":"f2166cd6df69a849b700be45e43243f2","responseTime":23,"status":200,"url":"/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1M30.FjIAKP-w91dhYXPP5W3AC6HHL0GA4qI--RSu878FhHs","level":"info","message":"auth send jwt","requestID":"d0da6dcc2f89ee65ed939b95eae0cd04"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d0da6dcc2f89ee65ed939b95eae0cd04","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d0da6dcc2f89ee65ed939b95eae0cd04"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":66,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:33Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":66,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.205936,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/104f0f65-5458-407b-b1e9-ae4691e5c28f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"d0da6dcc2f89ee65ed939b95eae0cd04","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/104f0f65-5458-407b-b1e9-ae4691e5c28f","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377853,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1M30.FjIAKP-w91dhYXPP5W3AC6HHL0GA4qI--RSu878FhHs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d0da6dcc2f89ee65ed939b95eae0cd04","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F104f0f65-5458-407b-b1e9-ae4691e5c28f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F104f0f65-5458-407b-b1e9-ae4691e5c28f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:31.626513611Z"}]},"request_id":"f711c975-7904-4516-90db-c1818c209ccc","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377853.7806118} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d0da6dcc2f89ee65ed939b95eae0cd04","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d0da6dcc2f89ee65ed939b95eae0cd04"} gateway-1 | {"time_local":"03/Sep/2024:15:37:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/104f0f65-5458-407b-b1e9-ae4691e5c28f? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.030","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d0da6dcc2f89ee65ed939b95eae0cd04"} device-1 | {"level":"info","message":"GET /devices/104f0f65-5458-407b-b1e9-ae4691e5c28f? 200 23ms","method":"GET","requestID":"d0da6dcc2f89ee65ed939b95eae0cd04","responseTime":23,"status":200,"url":"/devices/104f0f65-5458-407b-b1e9-ae4691e5c28f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1M30.FjIAKP-w91dhYXPP5W3AC6HHL0GA4qI--RSu878FhHs","level":"info","message":"auth send jwt","requestID":"d8401f6a0fc64bf505b7e7fd5e5d7a10"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d8401f6a0fc64bf505b7e7fd5e5d7a10","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"d8401f6a0fc64bf505b7e7fd5e5d7a10"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":67,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:33Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":67,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.423871,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"d8401f6a0fc64bf505b7e7fd5e5d7a10","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377853,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1M30.FjIAKP-w91dhYXPP5W3AC6HHL0GA4qI--RSu878FhHs"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d8401f6a0fc64bf505b7e7fd5e5d7a10","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c60767d9-5dec-4bec-8e0a-0df2728857fc"},"level":"info","message":"Attempting to run experiment","requestID":"d8401f6a0fc64bf505b7e7fd5e5d7a10"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c60767d9-5dec-4bec-8e0a-0df2728857fc"},"level":"info","message":"Attempting to book experiment","requestID":"d8401f6a0fc64bf505b7e7fd5e5d7a10"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c60767d9-5dec-4bec-8e0a-0df2728857fc"},"level":"info","message":"Successfully booked experiment","requestID":"d8401f6a0fc64bf505b7e7fd5e5d7a10"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"70543a00-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"70548820-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":68,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:33Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":68,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.785305,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:33Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":69,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"70543a00-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377853,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1M30.FjIAKP-w91dhYXPP5W3AC6HHL0GA4qI--RSu878FhHs"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"70543a00-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":69,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.972885,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/104f0f65-5458-407b-b1e9-ae4691e5c28f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"70548820-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/104f0f65-5458-407b-b1e9-ae4691e5c28f","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377853,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1M30.FjIAKP-w91dhYXPP5W3AC6HHL0GA4qI--RSu878FhHs"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"70548820-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa54dac71-bcf7-48f4-b227-7cc72b49d6cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa54dac71-bcf7-48f4-b227-7cc72b49d6cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:31.572551923Z"}]},"request_id":"f82775a3-4227-4c28-a84f-05a152505837","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377853.8707144} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"70543a00-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F104f0f65-5458-407b-b1e9-ae4691e5c28f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F104f0f65-5458-407b-b1e9-ae4691e5c28f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:31.626513611Z"}]},"request_id":"c410045d-3166-4d01-9029-d3e7d483c5c4","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377853.8725283} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"70548820-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"70543a00-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf? 200 26ms","method":"GET","requestID":"70543a00-6a0a-11ef-9b41-2363e6623fc8","responseTime":26,"status":200,"url":"/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"70548820-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/104f0f65-5458-407b-b1e9-ae4691e5c28f? 200 25ms","method":"GET","requestID":"70548820-6a0a-11ef-9b41-2363e6623fc8","responseTime":25,"status":200,"url":"/devices/104f0f65-5458-407b-b1e9-ae4691e5c28f?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c60767d9-5dec-4bec-8e0a-0df2728857fc"},"level":"info","message":"Setting up experiment","requestID":"d8401f6a0fc64bf505b7e7fd5e5d7a10"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c60767d9-5dec-4bec-8e0a-0df2728857fc"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"d8401f6a0fc64bf505b7e7fd5e5d7a10"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c60767d9-5dec-4bec-8e0a-0df2728857fc"},"level":"info","message":"Successfully locked booking for experiment","requestID":"d8401f6a0fc64bf505b7e7fd5e5d7a10"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c60767d9-5dec-4bec-8e0a-0df2728857fc"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"d8401f6a0fc64bf505b7e7fd5e5d7a10"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c60767d9-5dec-4bec-8e0a-0df2728857fc"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"d8401f6a0fc64bf505b7e7fd5e5d7a10"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c60767d9-5dec-4bec-8e0a-0df2728857fc"},"level":"info","message":"Attempting to update booking for experiment","requestID":"d8401f6a0fc64bf505b7e7fd5e5d7a10"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c60767d9-5dec-4bec-8e0a-0df2728857fc"},"level":"info","message":"Successfully updated booking for experiment","requestID":"d8401f6a0fc64bf505b7e7fd5e5d7a10"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c60767d9-5dec-4bec-8e0a-0df2728857fc"},"level":"info","message":"Successfully set up experiment","requestID":"d8401f6a0fc64bf505b7e7fd5e5d7a10"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"70626ad0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7062b8f0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"70630710-6a0a-11ef-9b41-2363e6623fc8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c60767d9-5dec-4bec-8e0a-0df2728857fc"},"level":"info","message":"Successfully running experiment","requestID":"d8401f6a0fc64bf505b7e7fd5e5d7a10"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":70,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:33Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":70,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.948578,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:33Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":71,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"70626ad0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377853,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1M30.FjIAKP-w91dhYXPP5W3AC6HHL0GA4qI--RSu878FhHs"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"70626ad0-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":71,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.077516,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:33Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":72,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/104f0f65-5458-407b-b1e9-ae4691e5c28f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7062b8f0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/104f0f65-5458-407b-b1e9-ae4691e5c28f","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377853,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1M30.FjIAKP-w91dhYXPP5W3AC6HHL0GA4qI--RSu878FhHs"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"7062b8f0-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":72,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.514207,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:33Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa54dac71-bcf7-48f4-b227-7cc72b49d6cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e0af1466-6bd3-489c-9c34-ab180f021e05","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377853.9614305} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"70630710-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf","object_type":"device","rebac_allow":false,"scope_allow":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":"70630710-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"70630710-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F104f0f65-5458-407b-b1e9-ae4691e5c28f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F104f0f65-5458-407b-b1e9-ae4691e5c28f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:31.626513611Z"}]},"request_id":"0b231276-6e17-4d99-87de-01993dc3c00e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377853.969557} device-1 | {"level":"info","message":"POST /devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf/signaling 200 18ms","method":"POST","requestID":"70630710-6a0a-11ef-9b41-2363e6623fc8","responseTime":18,"status":200,"url":"/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"7062b8f0-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa54dac71-bcf7-48f4-b227-7cc72b49d6cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa54dac71-bcf7-48f4-b227-7cc72b49d6cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:31.572551923Z"}]},"request_id":"c216c509-3113-46fd-99d9-a2c2501c6f99","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377853.9714665} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"70626ad0-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"70668980-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":73,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:33Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7062b8f0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/104f0f65-5458-407b-b1e9-ae4691e5c28f? 200 31ms","method":"GET","requestID":"7062b8f0-6a0a-11ef-9b41-2363e6623fc8","responseTime":31,"status":200,"url":"/devices/104f0f65-5458-407b-b1e9-ae4691e5c28f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"70626ad0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F104f0f65-5458-407b-b1e9-ae4691e5c28f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"83b811ba-247a-4906-a525-581b54df5838","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377853.9813752} device-1 | {"level":"info","message":"GET /devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf? 200 35ms","method":"GET","requestID":"70626ad0-6a0a-11ef-9b41-2363e6623fc8","responseTime":35,"status":200,"url":"/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf?"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":73,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.524266,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/104f0f65-5458-407b-b1e9-ae4691e5c28f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"70668980-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/104f0f65-5458-407b-b1e9-ae4691e5c28f","object_type":"device","rebac_allow":false,"scope_allow":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":"70668980-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc60767d9-5dec-4bec-8e0a-0df2728857fc#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc60767d9-5dec-4bec-8e0a-0df2728857fc","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"357af003-e044-4e4d-aadd-036719c0db76","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377853.9843092} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c7fa849e-b0b6-48b1-b1b8-96b5a534624c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377853.9848342} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"70688550-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"level":"info","message":"POST /relations/update 200 28ms","method":"POST","requestID":"d8401f6a0fc64bf505b7e7fd5e5d7a10","responseTime":28,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"70668980-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":74,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:33Z"} device-1 | {"level":"info","message":"POST /devices/104f0f65-5458-407b-b1e9-ae4691e5c28f/signaling 200 18ms","method":"POST","requestID":"70668980-6a0a-11ef-9b41-2363e6623fc8","responseTime":18,"status":200,"url":"/devices/104f0f65-5458-407b-b1e9-ae4691e5c28f/signaling"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa54dac71-bcf7-48f4-b227-7cc72b49d6cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"716b6036-1fda-499c-b901-65d23f9ac0d6","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377853.996214} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":74,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.61116,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"70688550-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"70688550-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/c60767d9-5dec-4bec-8e0a-0df2728857fc","user":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"d8401f6a0fc64bf505b7e7fd5e5d7a10"} gateway-1 | {"time_local":"03/Sep/2024:15:37:34 +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":"d8401f6a0fc64bf505b7e7fd5e5d7a10"} experiment-1 | {"level":"info","message":"POST /experiments? 201 199ms","method":"POST","requestID":"d8401f6a0fc64bf505b7e7fd5e5d7a10","responseTime":199,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"70688550-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf/signaling 200 14ms","method":"POST","requestID":"70688550-6a0a-11ef-9b41-2363e6623fc8","responseTime":14,"status":200,"url":"/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1NH0.lO_p7mFlZE19kClNoNwFp7L1KG9_mAu9SuohHQSgeCA","level":"info","message":"auth send jwt","requestID":"8ba491f3219b2361bc8d8af563871abf"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"706b1d60-6a0a-11ef-9b41-2363e6623fc8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8ba491f3219b2361bc8d8af563871abf","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8ba491f3219b2361bc8d8af563871abf"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":75,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:34Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":76,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:34Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":76,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.710327,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8ba491f3219b2361bc8d8af563871abf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377854,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1NH0.lO_p7mFlZE19kClNoNwFp7L1KG9_mAu9SuohHQSgeCA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8ba491f3219b2361bc8d8af563871abf","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F104f0f65-5458-407b-b1e9-ae4691e5c28f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"85aacc2b-e74e-425c-8650-44e0c4c9ff13","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377854.0109265} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":75,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.6328,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/104f0f65-5458-407b-b1e9-ae4691e5c28f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"706b1d60-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/104f0f65-5458-407b-b1e9-ae4691e5c28f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"706b1d60-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa54dac71-bcf7-48f4-b227-7cc72b49d6cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa54dac71-bcf7-48f4-b227-7cc72b49d6cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:31.572551923Z"}]},"request_id":"3e875a2e-4412-4722-a7c6-71c6976e701f","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377854.0159197} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"706b1d60-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8ba491f3219b2361bc8d8af563871abf","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/104f0f65-5458-407b-b1e9-ae4691e5c28f/signaling 200 11ms","method":"POST","requestID":"706b1d60-6a0a-11ef-9b41-2363e6623fc8","responseTime":11,"status":200,"url":"/devices/104f0f65-5458-407b-b1e9-ae4691e5c28f/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c60767d9-5dec-4bec-8e0a-0df2728857fc"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"d8401f6a0fc64bf505b7e7fd5e5d7a10"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c60767d9-5dec-4bec-8e0a-0df2728857fc"},"level":"info","message":"Building connection plan","requestID":"d8401f6a0fc64bf505b7e7fd5e5d7a10"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"6e3f1588-1739-434b-bdd8-b2a5b71d366a"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"3f1267ee-c3e2-48ff-9561-cc3ed66db8ea"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"54875177-0fd1-478f-a328-f0fb0fe437f8"}]},"level":"info","message":"Built pairwise service configurations","requestID":"d8401f6a0fc64bf505b7e7fd5e5d7a10"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/104f0f65-5458-407b-b1e9-ae4691e5c28f"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"d8401f6a0fc64bf505b7e7fd5e5d7a10"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8ba491f3219b2361bc8d8af563871abf"} gateway-1 | {"time_local":"03/Sep/2024:15:37:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf? 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":"8ba491f3219b2361bc8d8af563871abf"} device-1 | {"level":"info","message":"GET /devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf? 200 13ms","method":"GET","requestID":"8ba491f3219b2361bc8d8af563871abf","responseTime":13,"status":200,"url":"/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"706d8e60-6a0a-11ef-9b41-2363e6623fc8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1NH0.lO_p7mFlZE19kClNoNwFp7L1KG9_mAu9SuohHQSgeCA","level":"info","message":"auth send jwt","requestID":"9ddd7f221792f83335d062bb2f69e9e3"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":77,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:34Z"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9ddd7f221792f83335d062bb2f69e9e3","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":77,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.944521,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:34Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9ddd7f221792f83335d062bb2f69e9e3"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"706d8e60-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377853,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1M30.FjIAKP-w91dhYXPP5W3AC6HHL0GA4qI--RSu878FhHs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"706d8e60-6a0a-11ef-9b41-2363e6623fc8","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":78,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:34Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":78,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.693293,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/104f0f65-5458-407b-b1e9-ae4691e5c28f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9ddd7f221792f83335d062bb2f69e9e3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/104f0f65-5458-407b-b1e9-ae4691e5c28f","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377854,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1NH0.lO_p7mFlZE19kClNoNwFp7L1KG9_mAu9SuohHQSgeCA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9ddd7f221792f83335d062bb2f69e9e3","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F104f0f65-5458-407b-b1e9-ae4691e5c28f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F104f0f65-5458-407b-b1e9-ae4691e5c28f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:31.626513611Z"}]},"request_id":"c25f02f9-6a23-4603-b85f-2773f313c272","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377854.0339177} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9ddd7f221792f83335d062bb2f69e9e3","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9ddd7f221792f83335d062bb2f69e9e3"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","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%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"4b6ed521-ddd4-43a7-b244-c1cfe23912e7","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377854.0382278} gateway-1 | {"time_local":"03/Sep/2024:15:37:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/104f0f65-5458-407b-b1e9-ae4691e5c28f? 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":"9ddd7f221792f83335d062bb2f69e9e3"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fa4e31cc-555a-4288-b1be-50905f14c763","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377854.038654} device-1 | {"level":"info","message":"GET /devices/104f0f65-5458-407b-b1e9-ae4691e5c28f? 200 13ms","method":"GET","requestID":"9ddd7f221792f83335d062bb2f69e9e3","responseTime":13,"status":200,"url":"/devices/104f0f65-5458-407b-b1e9-ae4691e5c28f?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"706d8e60-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"706d8e60-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"706d8e60-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/5101e709-1bc8-42da-92d8-4eb584b4c711'","requestID":"706d8e60-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/5101e709-1bc8-42da-92d8-4eb584b4c711'","requestID":"706d8e60-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"706d8e60-6a0a-11ef-9b41-2363e6623fc8"} 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":"706d8e60-6a0a-11ef-9b41-2363e6623fc8","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":"706d8e60-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/5101e709-1bc8-42da-92d8-4eb584b4c711","device":"104f0f65-5458-407b-b1e9-ae4691e5c28f","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/c60767d9-5dec-4bec-8e0a-0df2728857fc"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"d8401f6a0fc64bf505b7e7fd5e5d7a10"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"70775260-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":79,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:34Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa54dac71-bcf7-48f4-b227-7cc72b49d6cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"45ac3764-d365-4984-b4e5-f5682652b216","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377854.0913384} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":79,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.531631,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"70775260-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"70775260-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"70775260-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf/signaling 200 10ms","method":"POST","requestID":"70775260-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"70790010-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":80,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:34Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F104f0f65-5458-407b-b1e9-ae4691e5c28f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"14589429-8783-422d-9249-f9e70cb0e493","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377854.1025782} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":80,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.777707,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/104f0f65-5458-407b-b1e9-ae4691e5c28f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"70790010-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/104f0f65-5458-407b-b1e9-ae4691e5c28f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"70790010-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"70790010-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/104f0f65-5458-407b-b1e9-ae4691e5c28f/signaling 200 10ms","method":"POST","requestID":"70790010-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/devices/104f0f65-5458-407b-b1e9-ae4691e5c28f/signaling"} device-1 | {"device":"104f0f65-5458-407b-b1e9-ae4691e5c28f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"104f0f65-5458-407b-b1e9-ae4691e5c28f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"a54dac71-bcf7-48f4-b227-7cc72b49d6cf","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":"5101e709-1bc8-42da-92d8-4eb584b4c711","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 6118036953532044497 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:LYk5\r\na=ice-pwd:X+Wi/+i+FANT6A/mdxQBvbwH\r\na=ice-options:trickle\r\na=fingerprint:sha-256 68:3E:6D:CF:23:C7:6B:74:BD:CB:2C:A8:11:A1:72:9E:9B:FB:FF:EB:94:34:12:59:B6:E9:2F:18:F7:24:99:20\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"104f0f65-5458-407b-b1e9-ae4691e5c28f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"device":"104f0f65-5458-407b-b1e9-ae4691e5c28f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:2075914059 1 udp 2113937151 2e234df8-7f4d-46df-903d-49a180ca6b98.local 38575 typ host generation 0 ufrag LYk5 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"104f0f65-5458-407b-b1e9-ae4691e5c28f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"a54dac71-bcf7-48f4-b227-7cc72b49d6cf","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":"a54dac71-bcf7-48f4-b227-7cc72b49d6cf","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":"a54dac71-bcf7-48f4-b227-7cc72b49d6cf","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:1508204998 1 udp 1677729535 141.24.211.56 38575 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag LYk5 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"104f0f65-5458-407b-b1e9-ae4691e5c28f","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/5101e709-1bc8-42da-92d8-4eb584b4c711' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5101e709-1bc8-42da-92d8-4eb584b4c711","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c67c657a36361e26fe185d36ffe8cb8c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/104f0f65-5458-407b-b1e9-ae4691e5c28f'"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c67c657a36361e26fe185d36ffe8cb8c","responseTime":2,"status":200,"url":"/auth"} device-1 | {"device":"104f0f65-5458-407b-b1e9-ae4691e5c28f","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/104f0f65-5458-407b-b1e9-ae4691e5c28f"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/5101e709-1bc8-42da-92d8-4eb584b4c711"}}},"level":"info","message":"received a callback","requestID":"c67c657a36361e26fe185d36ffe8cb8c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"c67c657a36361e26fe185d36ffe8cb8c","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:37:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch","requestID":"c67c657a36361e26fe185d36ffe8cb8c"} device-1 | {"data":{"peerconnection":"5101e709-1bc8-42da-92d8-4eb584b4c711","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"a54dac71-bcf7-48f4-b227-7cc72b49d6cf","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":"104f0f65-5458-407b-b1e9-ae4691e5c28f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"a54dac71-bcf7-48f4-b227-7cc72b49d6cf","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":"5101e709-1bc8-42da-92d8-4eb584b4c711","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"104f0f65-5458-407b-b1e9-ae4691e5c28f","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/5101e709-1bc8-42da-92d8-4eb584b4c711' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5101e709-1bc8-42da-92d8-4eb584b4c711","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"365775cfbf2fcba59e70a59758bd9bb3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"365775cfbf2fcba59e70a59758bd9bb3","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/104f0f65-5458-407b-b1e9-ae4691e5c28f"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/5101e709-1bc8-42da-92d8-4eb584b4c711"}}},"level":"info","message":"received a callback","requestID":"365775cfbf2fcba59e70a59758bd9bb3"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"71c248f0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":81,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:36Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5101e709-1bc8-42da-92d8-4eb584b4c711","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"78f9ea66-8351-4b5e-91fc-3e8852a17aba","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377856.262243} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":81,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.996951,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/5101e709-1bc8-42da-92d8-4eb584b4c711","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"71c248f0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/5101e709-1bc8-42da-92d8-4eb584b4c711","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"71c248f0-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"71c248f0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /peerconnections/5101e709-1bc8-42da-92d8-4eb584b4c711 200 14ms","method":"GET","requestID":"71c248f0-6a0a-11ef-9b41-2363e6623fc8","responseTime":14,"status":200,"url":"/peerconnections/5101e709-1bc8-42da-92d8-4eb584b4c711"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 51ms","method":"POST","requestID":"365775cfbf2fcba59e70a59758bd9bb3","responseTime":51,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:37:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.057","http_referrer":"","http_user_agent":"node-fetch","requestID":"365775cfbf2fcba59e70a59758bd9bb3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"71c8d8a0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":82,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:36Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F104f0f65-5458-407b-b1e9-ae4691e5c28f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6e9a5662-76c5-4d28-84f6-57b69715a3bf","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377856.306206} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":82,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.028417,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/104f0f65-5458-407b-b1e9-ae4691e5c28f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"71c8d8a0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/104f0f65-5458-407b-b1e9-ae4691e5c28f","object_type":"device","rebac_allow":false,"scope_allow":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":"71c8d8a0-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"71c8d8a0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/104f0f65-5458-407b-b1e9-ae4691e5c28f/signaling 200 16ms","method":"POST","requestID":"71c8d8a0-6a0a-11ef-9b41-2363e6623fc8","responseTime":16,"status":200,"url":"/devices/104f0f65-5458-407b-b1e9-ae4691e5c28f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"71cbe5e0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":83,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:36Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa54dac71-bcf7-48f4-b227-7cc72b49d6cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"07b0207a-a213-49b7-9c6a-67fe23879224","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377856.3267443} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":83,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.507852,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"71cbe5e0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1Nn0.v0YF6saUi71ILSychx4NqKas8iu4tY64HDPvHXQycR8","level":"info","message":"auth send jwt","requestID":"980a6f6178d017d22db86a7c424b69e9"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"71cbe5e0-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"980a6f6178d017d22db86a7c424b69e9","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/c60767d9-5dec-4bec-8e0a-0df2728857fc","requestID":"980a6f6178d017d22db86a7c424b69e9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"71cbe5e0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf/signaling 200 18ms","method":"POST","requestID":"71cbe5e0-6a0a-11ef-9b41-2363e6623fc8","responseTime":18,"status":200,"url":"/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf/signaling"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":84,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:36Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":84,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.320228,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c60767d9-5dec-4bec-8e0a-0df2728857fc","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"980a6f6178d017d22db86a7c424b69e9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/c60767d9-5dec-4bec-8e0a-0df2728857fc","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377856,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1Nn0.v0YF6saUi71ILSychx4NqKas8iu4tY64HDPvHXQycR8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"980a6f6178d017d22db86a7c424b69e9","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/c60767d9-5dec-4bec-8e0a-0df2728857fc","requestID":"980a6f6178d017d22db86a7c424b69e9"} gateway-1 | {"time_local":"03/Sep/2024:15:37:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/c60767d9-5dec-4bec-8e0a-0df2728857fc HTTP/1.1","status": "200","body_bytes_sent":"884","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"980a6f6178d017d22db86a7c424b69e9"} experiment-1 | {"level":"info","message":"GET /experiments/c60767d9-5dec-4bec-8e0a-0df2728857fc 200 18ms","method":"GET","requestID":"980a6f6178d017d22db86a7c424b69e9","responseTime":18,"status":200,"url":"/experiments/c60767d9-5dec-4bec-8e0a-0df2728857fc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1Nn0.v0YF6saUi71ILSychx4NqKas8iu4tY64HDPvHXQycR8","level":"info","message":"auth send jwt","requestID":"c4b9b16eb2fe3c46fddcf95300fca7ff"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c4b9b16eb2fe3c46fddcf95300fca7ff","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/c60767d9-5dec-4bec-8e0a-0df2728857fc","requestID":"c4b9b16eb2fe3c46fddcf95300fca7ff"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":85,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:36Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":85,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.927811,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:36Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c60767d9-5dec-4bec-8e0a-0df2728857fc","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"c4b9b16eb2fe3c46fddcf95300fca7ff","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/c60767d9-5dec-4bec-8e0a-0df2728857fc","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377856,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1Nn0.v0YF6saUi71ILSychx4NqKas8iu4tY64HDPvHXQycR8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c4b9b16eb2fe3c46fddcf95300fca7ff","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c60767d9-5dec-4bec-8e0a-0df2728857fc"},"level":"info","message":"Attempting to finish experiment","requestID":"c4b9b16eb2fe3c46fddcf95300fca7ff"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"71d4bf80-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":86,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:36Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":86,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.156461,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:36Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/5101e709-1bc8-42da-92d8-4eb584b4c711","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"71d4bf80-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:http://localhost/peerconnections/5101e709-1bc8-42da-92d8-4eb584b4c711","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377856,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1Nn0.v0YF6saUi71ILSychx4NqKas8iu4tY64HDPvHXQycR8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"71d4bf80-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/5101e709-1bc8-42da-92d8-4eb584b4c711","device":"104f0f65-5458-407b-b1e9-ae4691e5c28f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"a54dac71-bcf7-48f4-b227-7cc72b49d6cf","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":"a54dac71-bcf7-48f4-b227-7cc72b49d6cf","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":"a54dac71-bcf7-48f4-b227-7cc72b49d6cf","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/5101e709-1bc8-42da-92d8-4eb584b4c711' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/5101e709-1bc8-42da-92d8-4eb584b4c711' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5101e709-1bc8-42da-92d8-4eb584b4c711","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cecf3b8ce6f1a3034a443022db65ac80","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"cecf3b8ce6f1a3034a443022db65ac80","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f83c06cf779f7cdc86521ad87b6cd9f4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"f83c06cf779f7cdc86521ad87b6cd9f4","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/104f0f65-5458-407b-b1e9-ae4691e5c28f"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/5101e709-1bc8-42da-92d8-4eb584b4c711"}}},"level":"info","message":"received a callback","requestID":"cecf3b8ce6f1a3034a443022db65ac80"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5101e709-1bc8-42da-92d8-4eb584b4c711': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5101e709-1bc8-42da-92d8-4eb584b4c711","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"b67f9e3f-c343-4dbc-9b63-4238f16cd1f6","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377856.4086802} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"165b1822-c1a5-4d79-9d7f-d4d6ecb0b8a0","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377856.4092345} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"71d4bf80-6a0a-11ef-9b41-2363e6623fc8","responseTime":18,"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/104f0f65-5458-407b-b1e9-ae4691e5c28f"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/5101e709-1bc8-42da-92d8-4eb584b4c711"}}},"level":"info","message":"received a callback","requestID":"f83c06cf779f7cdc86521ad87b6cd9f4"} device-1 | {"data":{"peerconnection":"5101e709-1bc8-42da-92d8-4eb584b4c711","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"71d4bf80-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"DELETE /peerconnections/5101e709-1bc8-42da-92d8-4eb584b4c711 204 58ms","method":"DELETE","requestID":"71d4bf80-6a0a-11ef-9b41-2363e6623fc8","responseTime":58,"status":204,"url":"/peerconnections/5101e709-1bc8-42da-92d8-4eb584b4c711"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c60767d9-5dec-4bec-8e0a-0df2728857fc"},"level":"info","message":"Successfully finished experiment","requestID":"c4b9b16eb2fe3c46fddcf95300fca7ff"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"71e205f0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":87,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:36Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F104f0f65-5458-407b-b1e9-ae4691e5c28f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4d7402b6-0f01-4f87-a148-5032cf641a5a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377856.4697144} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":87,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.719977,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/104f0f65-5458-407b-b1e9-ae4691e5c28f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"71e205f0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/104f0f65-5458-407b-b1e9-ae4691e5c28f","object_type":"device","rebac_allow":false,"scope_allow":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":"71e205f0-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"71e205f0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/104f0f65-5458-407b-b1e9-ae4691e5c28f/signaling 200 15ms","method":"POST","requestID":"71e205f0-6a0a-11ef-9b41-2363e6623fc8","responseTime":15,"status":200,"url":"/devices/104f0f65-5458-407b-b1e9-ae4691e5c28f/signaling"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc60767d9-5dec-4bec-8e0a-0df2728857fc': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc60767d9-5dec-4bec-8e0a-0df2728857fc","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"59fe656c-b0b6-4348-962b-274077dfbcfd","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377856.4811792} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"71e4ec20-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"41e56a9f-44e4-4c1d-b10c-d229af797a9b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377856.4819558} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"c4b9b16eb2fe3c46fddcf95300fca7ff","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":88,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:36Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa54dac71-bcf7-48f4-b227-7cc72b49d6cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e0eefdb3-e0fb-4598-9dfa-b1732d8de4cd","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377856.4900544} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":88,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.684944,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"71e4ec20-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf","object_type":"device","rebac_allow":false,"scope_allow":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":"71e4ec20-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"71e4ec20-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf/signaling 200 16ms","method":"POST","requestID":"71e4ec20-6a0a-11ef-9b41-2363e6623fc8","responseTime":16,"status":200,"url":"/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/c60767d9-5dec-4bec-8e0a-0df2728857fc","requestID":"c4b9b16eb2fe3c46fddcf95300fca7ff"} gateway-1 | {"time_local":"03/Sep/2024:15:37:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/c60767d9-5dec-4bec-8e0a-0df2728857fc HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.203","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c4b9b16eb2fe3c46fddcf95300fca7ff"} experiment-1 | {"level":"info","message":"DELETE /experiments/c60767d9-5dec-4bec-8e0a-0df2728857fc 204 200ms","method":"DELETE","requestID":"c4b9b16eb2fe3c46fddcf95300fca7ff","responseTime":200,"status":204,"url":"/experiments/c60767d9-5dec-4bec-8e0a-0df2728857fc"} gateway-1 | {"time_local":"03/Sep/2024:15:37:36 +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.385","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"096abe8374ea97e02749069b3b719556"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 147ms","method":"POST","requestID":"cecf3b8ce6f1a3034a443022db65ac80","responseTime":147,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:37:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.156","http_referrer":"","http_user_agent":"node-fetch","requestID":"cecf3b8ce6f1a3034a443022db65ac80"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 147ms","method":"POST","requestID":"f83c06cf779f7cdc86521ad87b6cd9f4","responseTime":147,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1Nn0.v0YF6saUi71ILSychx4NqKas8iu4tY64HDPvHXQycR8","level":"info","message":"auth send jwt","requestID":"e59237bd71eea5b0d329ceaa969d2452"} gateway-1 | {"time_local":"03/Sep/2024:15:37:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.156","http_referrer":"","http_user_agent":"node-fetch","requestID":"f83c06cf779f7cdc86521ad87b6cd9f4"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e59237bd71eea5b0d329ceaa969d2452","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e59237bd71eea5b0d329ceaa969d2452"} gateway-1 | {"time_local":"03/Sep/2024:15:37:36 +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.860","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"2543b5947b92ce62f85ce83e2945f35b"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":89,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:36Z"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/a54dac71-bcf7-48f4-b227-7cc72b49d6cf' closed"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":89,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.892452,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:36Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"e59237bd71eea5b0d329ceaa969d2452","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377856,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1Nn0.v0YF6saUi71ILSychx4NqKas8iu4tY64HDPvHXQycR8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e59237bd71eea5b0d329ceaa969d2452","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/104f0f65-5458-407b-b1e9-ae4691e5c28f' 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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ee7261c-b4bf-41a0-ba3a-aae46a03a571","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"18badd6a-07c0-44fa-a3fd-89ef83056b13","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377856.5847926} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e59237bd71eea5b0d329ceaa969d2452","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3858d0b8-cd2d-4154-971e-97f922373f62","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377856.5900552} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"e59237bd71eea5b0d329ceaa969d2452","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ee7261c-b4bf-41a0-ba3a-aae46a03a571","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"35c7a24b-3ce9-4435-a35b-335bffa585a7","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377856.600972} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"28bedbe6-7cfc-45ef-9792-0a5f3536be5a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377856.6011028} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"e59237bd71eea5b0d329ceaa969d2452","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ee7261c-b4bf-41a0-ba3a-aae46a03a571","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ee7261c-b4bf-41a0-ba3a-aae46a03a571","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:36.600959843Z"}]},"request_id":"ec01778e-31ab-400e-97ae-a17790f8b5eb","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377856.605728} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e59237bd71eea5b0d329ceaa969d2452","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e59237bd71eea5b0d329ceaa969d2452"} gateway-1 | {"time_local":"03/Sep/2024:15:37:36 +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":"e59237bd71eea5b0d329ceaa969d2452"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"e59237bd71eea5b0d329ceaa969d2452","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1Nn0.v0YF6saUi71ILSychx4NqKas8iu4tY64HDPvHXQycR8","level":"info","message":"auth send jwt","requestID":"274eae408930490468d757792a4235ca"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"274eae408930490468d757792a4235ca","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"274eae408930490468d757792a4235ca"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":90,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:36Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":90,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.718232,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:36Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"274eae408930490468d757792a4235ca","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377856,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1Nn0.v0YF6saUi71ILSychx4NqKas8iu4tY64HDPvHXQycR8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"274eae408930490468d757792a4235ca","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4796211-c737-47dc-b50d-287f99dc335e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"670b7cfd-0feb-44b5-b487-9f25017cd6d8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377856.6301758} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"274eae408930490468d757792a4235ca","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b76508b3-d9cd-49e3-b084-b9c16f272a47","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377856.6352687} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"274eae408930490468d757792a4235ca","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4796211-c737-47dc-b50d-287f99dc335e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"24dceb68-88cf-477c-bbe5-98a097de4009","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377856.651061} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"83c246e6-c5cf-4f47-932a-19714afef950","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377856.6512108} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"274eae408930490468d757792a4235ca","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4796211-c737-47dc-b50d-287f99dc335e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4796211-c737-47dc-b50d-287f99dc335e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:36.651049497Z"}]},"request_id":"a0e09cde-6da1-44b5-8855-7406d9e61f15","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377856.6555889} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"274eae408930490468d757792a4235ca","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"274eae408930490468d757792a4235ca"} gateway-1 | {"time_local":"03/Sep/2024:15:37:36 +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":"274eae408930490468d757792a4235ca"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"274eae408930490468d757792a4235ca","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1N30.Bl7zGerHenBXqLfiZ7NbBtCHrLi7XGeK3uHK2jd_CrM","level":"info","message":"auth send jwt","requestID":"48e7bdc41a574ce933e54f3ebefe4bb7"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"48e7bdc41a574ce933e54f3ebefe4bb7","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"48e7bdc41a574ce933e54f3ebefe4bb7"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":91,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:37Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1N30.Bl7zGerHenBXqLfiZ7NbBtCHrLi7XGeK3uHK2jd_CrM","level":"info","message":"auth send jwt","requestID":"2da7113fbb290ad37e825303f6c3adb5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2da7113fbb290ad37e825303f6c3adb5","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":91,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.952248,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:37Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"2da7113fbb290ad37e825303f6c3adb5"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"48e7bdc41a574ce933e54f3ebefe4bb7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377857,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1N30.Bl7zGerHenBXqLfiZ7NbBtCHrLi7XGeK3uHK2jd_CrM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"48e7bdc41a574ce933e54f3ebefe4bb7","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":92,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:37Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":92,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.741054,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:37Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4796211-c737-47dc-b50d-287f99dc335e","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"2da7113fbb290ad37e825303f6c3adb5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/c4796211-c737-47dc-b50d-287f99dc335e","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377857,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1N30.Bl7zGerHenBXqLfiZ7NbBtCHrLi7XGeK3uHK2jd_CrM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2da7113fbb290ad37e825303f6c3adb5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ee7261c-b4bf-41a0-ba3a-aae46a03a571","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ee7261c-b4bf-41a0-ba3a-aae46a03a571","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:36.600959843Z"}]},"request_id":"fa00c47b-3d20-476c-9bc5-7305a335084e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377857.1097176} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"48e7bdc41a574ce933e54f3ebefe4bb7","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4796211-c737-47dc-b50d-287f99dc335e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4796211-c737-47dc-b50d-287f99dc335e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:36.651049497Z"}]},"request_id":"5d23e4ea-66dc-476d-bca8-37f073d379c7","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377857.1157918} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"2da7113fbb290ad37e825303f6c3adb5","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"11dec595-2cfd-48a6-8351-7edc417f4d2c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377857.1185153} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"48e7bdc41a574ce933e54f3ebefe4bb7","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8059a14b-d8a6-4a03-ad09-7347790f5628","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377857.123954} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"2da7113fbb290ad37e825303f6c3adb5","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ee7261c-b4bf-41a0-ba3a-aae46a03a571","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ee7261c-b4bf-41a0-ba3a-aae46a03a571","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:36.600959843Z"}]},"request_id":"705cd4e2-69c4-4c91-9174-474ca9f735c3","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377857.1289957} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"48e7bdc41a574ce933e54f3ebefe4bb7","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"48e7bdc41a574ce933e54f3ebefe4bb7"} gateway-1 | {"time_local":"03/Sep/2024:15:37:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.041","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"48e7bdc41a574ce933e54f3ebefe4bb7"} device-1 | {"level":"info","message":"PATCH /devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571 200 37ms","method":"PATCH","requestID":"48e7bdc41a574ce933e54f3ebefe4bb7","responseTime":37,"status":200,"url":"/devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4796211-c737-47dc-b50d-287f99dc335e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4796211-c737-47dc-b50d-287f99dc335e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:36.651049497Z"}]},"request_id":"a25443a4-9dc0-4f10-9db7-54758d8151d6","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377857.1394641} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1N30.Bl7zGerHenBXqLfiZ7NbBtCHrLi7XGeK3uHK2jd_CrM","level":"info","message":"auth send jwt","requestID":"7fad7ad08c0327122917f311807a31cf"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2da7113fbb290ad37e825303f6c3adb5","responseTime":3,"status":200,"url":"/relations/query"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7fad7ad08c0327122917f311807a31cf","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"2da7113fbb290ad37e825303f6c3adb5"} gateway-1 | {"time_local":"03/Sep/2024:15:37:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/c4796211-c737-47dc-b50d-287f99dc335e HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.044","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"2da7113fbb290ad37e825303f6c3adb5"} device-1 | {"level":"info","message":"PATCH /devices/c4796211-c737-47dc-b50d-287f99dc335e 200 40ms","method":"PATCH","requestID":"2da7113fbb290ad37e825303f6c3adb5","responseTime":40,"status":200,"url":"/devices/c4796211-c737-47dc-b50d-287f99dc335e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"7fad7ad08c0327122917f311807a31cf"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":93,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:37Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1N30.Bl7zGerHenBXqLfiZ7NbBtCHrLi7XGeK3uHK2jd_CrM","level":"info","message":"auth send jwt","requestID":"523c2decc168a3e8692b696b79acaae7"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":93,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.936943,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:37Z"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"523c2decc168a3e8692b696b79acaae7","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"523c2decc168a3e8692b696b79acaae7"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7fad7ad08c0327122917f311807a31cf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377857,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1N30.Bl7zGerHenBXqLfiZ7NbBtCHrLi7XGeK3uHK2jd_CrM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7fad7ad08c0327122917f311807a31cf","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":94,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:37Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":94,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.740693,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:37Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4796211-c737-47dc-b50d-287f99dc335e","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"523c2decc168a3e8692b696b79acaae7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/c4796211-c737-47dc-b50d-287f99dc335e","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377857,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1N30.Bl7zGerHenBXqLfiZ7NbBtCHrLi7XGeK3uHK2jd_CrM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"523c2decc168a3e8692b696b79acaae7","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"7fad7ad08c0327122917f311807a31cf"} device-1 | {"level":"info","message":"POST /devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571/websocket 200 18ms","method":"POST","requestID":"7fad7ad08c0327122917f311807a31cf","responseTime":18,"status":200,"url":"/devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571/websocket"} gateway-1 | {"time_local":"03/Sep/2024:15:37:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"7fad7ad08c0327122917f311807a31cf"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"523c2decc168a3e8692b696b79acaae7"} device-1 | {"level":"info","message":"POST /devices/c4796211-c737-47dc-b50d-287f99dc335e/websocket 200 21ms","method":"POST","requestID":"523c2decc168a3e8692b696b79acaae7","responseTime":21,"status":200,"url":"/devices/c4796211-c737-47dc-b50d-287f99dc335e/websocket"} gateway-1 | {"time_local":"03/Sep/2024:15:37:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c4796211-c737-47dc-b50d-287f99dc335e/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.025","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"523c2decc168a3e8692b696b79acaae7"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c4796211-c737-47dc-b50d-287f99dc335e' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1N30.Bl7zGerHenBXqLfiZ7NbBtCHrLi7XGeK3uHK2jd_CrM","level":"info","message":"auth send jwt","requestID":"78818768391bd571f12f83ac4228b5b8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"78818768391bd571f12f83ac4228b5b8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"78818768391bd571f12f83ac4228b5b8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":95,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:37Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":95,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.774437,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"78818768391bd571f12f83ac4228b5b8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377857,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1N30.Bl7zGerHenBXqLfiZ7NbBtCHrLi7XGeK3uHK2jd_CrM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"78818768391bd571f12f83ac4228b5b8","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ee7261c-b4bf-41a0-ba3a-aae46a03a571","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ee7261c-b4bf-41a0-ba3a-aae46a03a571","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:36.600959843Z"}]},"request_id":"5db24ed5-d44d-4af3-be85-54d8360d0999","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377857.204629} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"78818768391bd571f12f83ac4228b5b8","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"78818768391bd571f12f83ac4228b5b8"} gateway-1 | {"time_local":"03/Sep/2024:15:37:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571? 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":"78818768391bd571f12f83ac4228b5b8"} device-1 | {"level":"info","message":"GET /devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571? 200 12ms","method":"GET","requestID":"78818768391bd571f12f83ac4228b5b8","responseTime":12,"status":200,"url":"/devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1N30.Bl7zGerHenBXqLfiZ7NbBtCHrLi7XGeK3uHK2jd_CrM","level":"info","message":"auth send jwt","requestID":"cf5cdb20a619dddf9d7dd2d083d078f2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"cf5cdb20a619dddf9d7dd2d083d078f2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cf5cdb20a619dddf9d7dd2d083d078f2"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":96,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:37Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":96,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.692539,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4796211-c737-47dc-b50d-287f99dc335e","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"cf5cdb20a619dddf9d7dd2d083d078f2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/c4796211-c737-47dc-b50d-287f99dc335e","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377857,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1N30.Bl7zGerHenBXqLfiZ7NbBtCHrLi7XGeK3uHK2jd_CrM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"cf5cdb20a619dddf9d7dd2d083d078f2","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4796211-c737-47dc-b50d-287f99dc335e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4796211-c737-47dc-b50d-287f99dc335e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:36.651049497Z"}]},"request_id":"ad47a796-73df-4004-8292-89da58b6be87","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377857.2253044} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cf5cdb20a619dddf9d7dd2d083d078f2","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cf5cdb20a619dddf9d7dd2d083d078f2"} gateway-1 | {"time_local":"03/Sep/2024:15:37:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c4796211-c737-47dc-b50d-287f99dc335e? 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":"cf5cdb20a619dddf9d7dd2d083d078f2"} device-1 | {"level":"info","message":"GET /devices/c4796211-c737-47dc-b50d-287f99dc335e? 200 12ms","method":"GET","requestID":"cf5cdb20a619dddf9d7dd2d083d078f2","responseTime":12,"status":200,"url":"/devices/c4796211-c737-47dc-b50d-287f99dc335e?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1N30.Bl7zGerHenBXqLfiZ7NbBtCHrLi7XGeK3uHK2jd_CrM","level":"info","message":"auth send jwt","requestID":"4d1fb0403e3da8157bfd9303b92609bf"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4d1fb0403e3da8157bfd9303b92609bf","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"4d1fb0403e3da8157bfd9303b92609bf"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":97,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:37Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":97,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.798136,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:37Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"4d1fb0403e3da8157bfd9303b92609bf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377857,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1N30.Bl7zGerHenBXqLfiZ7NbBtCHrLi7XGeK3uHK2jd_CrM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4d1fb0403e3da8157bfd9303b92609bf","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0a862d47-fe81-4492-9ef2-0757d87db539"},"level":"info","message":"Attempting to run experiment","requestID":"4d1fb0403e3da8157bfd9303b92609bf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0a862d47-fe81-4492-9ef2-0757d87db539"},"level":"info","message":"Attempting to book experiment","requestID":"4d1fb0403e3da8157bfd9303b92609bf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0a862d47-fe81-4492-9ef2-0757d87db539"},"level":"info","message":"Successfully booked experiment","requestID":"4d1fb0403e3da8157bfd9303b92609bf"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"725e88f0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"725efe20-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":98,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:37Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":98,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.78423,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:37Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":99,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"725e88f0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377857,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1N30.Bl7zGerHenBXqLfiZ7NbBtCHrLi7XGeK3uHK2jd_CrM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"725e88f0-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":99,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.688202,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4796211-c737-47dc-b50d-287f99dc335e","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"725efe20-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/c4796211-c737-47dc-b50d-287f99dc335e","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377857,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1N30.Bl7zGerHenBXqLfiZ7NbBtCHrLi7XGeK3uHK2jd_CrM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"725efe20-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ee7261c-b4bf-41a0-ba3a-aae46a03a571","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ee7261c-b4bf-41a0-ba3a-aae46a03a571","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:36.600959843Z"}]},"request_id":"8aff2c30-c217-4b4e-b337-50c98fec0c95","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377857.2913332} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"725e88f0-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4796211-c737-47dc-b50d-287f99dc335e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4796211-c737-47dc-b50d-287f99dc335e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:36.651049497Z"}]},"request_id":"a3325928-a43f-4eec-bf07-090caae9b120","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377857.29274} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"725efe20-6a0a-11ef-9b41-2363e6623fc8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"725e88f0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571? 200 19ms","method":"GET","requestID":"725e88f0-6a0a-11ef-9b41-2363e6623fc8","responseTime":19,"status":200,"url":"/devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"725efe20-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/c4796211-c737-47dc-b50d-287f99dc335e? 200 18ms","method":"GET","requestID":"725efe20-6a0a-11ef-9b41-2363e6623fc8","responseTime":18,"status":200,"url":"/devices/c4796211-c737-47dc-b50d-287f99dc335e?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0a862d47-fe81-4492-9ef2-0757d87db539"},"level":"info","message":"Setting up experiment","requestID":"4d1fb0403e3da8157bfd9303b92609bf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0a862d47-fe81-4492-9ef2-0757d87db539"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"4d1fb0403e3da8157bfd9303b92609bf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0a862d47-fe81-4492-9ef2-0757d87db539"},"level":"info","message":"Successfully locked booking for experiment","requestID":"4d1fb0403e3da8157bfd9303b92609bf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0a862d47-fe81-4492-9ef2-0757d87db539"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"4d1fb0403e3da8157bfd9303b92609bf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0a862d47-fe81-4492-9ef2-0757d87db539"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"4d1fb0403e3da8157bfd9303b92609bf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0a862d47-fe81-4492-9ef2-0757d87db539"},"level":"info","message":"Attempting to update booking for experiment","requestID":"4d1fb0403e3da8157bfd9303b92609bf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0a862d47-fe81-4492-9ef2-0757d87db539"},"level":"info","message":"Successfully updated booking for experiment","requestID":"4d1fb0403e3da8157bfd9303b92609bf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0a862d47-fe81-4492-9ef2-0757d87db539"},"level":"info","message":"Successfully set up experiment","requestID":"4d1fb0403e3da8157bfd9303b92609bf"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7268c220-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"72691040-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":100,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:37Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"72695e60-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":100,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.797702,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:37Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":101,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:37Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0a862d47-fe81-4492-9ef2-0757d87db539"},"level":"info","message":"Successfully running experiment","requestID":"4d1fb0403e3da8157bfd9303b92609bf"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7268c220-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377857,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1N30.Bl7zGerHenBXqLfiZ7NbBtCHrLi7XGeK3uHK2jd_CrM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7268c220-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":101,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.862955,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4796211-c737-47dc-b50d-287f99dc335e","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"72691040-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/c4796211-c737-47dc-b50d-287f99dc335e","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377857,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1N30.Bl7zGerHenBXqLfiZ7NbBtCHrLi7XGeK3uHK2jd_CrM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"72691040-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":102,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:37Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ee7261c-b4bf-41a0-ba3a-aae46a03a571","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fea74906-4fbd-4a95-9d8d-266d2a910c84","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377857.3578434} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4796211-c737-47dc-b50d-287f99dc335e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4796211-c737-47dc-b50d-287f99dc335e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:36.651049497Z"}]},"request_id":"08c0625f-3506-4d2b-9a28-0751f7cdeaef","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377857.3603756} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":102,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.300074,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"72695e60-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571","object_type":"device","rebac_allow":false,"scope_allow":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":"72695e60-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"72691040-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ee7261c-b4bf-41a0-ba3a-aae46a03a571","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ee7261c-b4bf-41a0-ba3a-aae46a03a571","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:36.600959843Z"}]},"request_id":"b7cee692-d82d-4c12-b887-07de5c3dca4f","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377857.3632467} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"7268c220-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"72695e60-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571/signaling 200 19ms","method":"POST","requestID":"72695e60-6a0a-11ef-9b41-2363e6623fc8","responseTime":19,"status":200,"url":"/devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"72691040-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/c4796211-c737-47dc-b50d-287f99dc335e? 200 24ms","method":"GET","requestID":"72691040-6a0a-11ef-9b41-2363e6623fc8","responseTime":24,"status":200,"url":"/devices/c4796211-c737-47dc-b50d-287f99dc335e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7268c220-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571? 200 27ms","method":"GET","requestID":"7268c220-6a0a-11ef-9b41-2363e6623fc8","responseTime":27,"status":200,"url":"/devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"726d07e0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0a862d47-fe81-4492-9ef2-0757d87db539#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0a862d47-fe81-4492-9ef2-0757d87db539","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"ff6123ff-4bf2-4d98-a19a-e6a8c1913d1d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377857.3749807} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"60d385d2-794a-4e18-b043-cf7c94b53d78","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377857.3753462} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"726d5600-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"4d1fb0403e3da8157bfd9303b92609bf","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":103,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:37Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":104,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:37Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4796211-c737-47dc-b50d-287f99dc335e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b26a3fe3-8135-4161-967f-77e5dc75856a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377857.3805492} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":103,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.662219,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4796211-c737-47dc-b50d-287f99dc335e","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"726d07e0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c4796211-c737-47dc-b50d-287f99dc335e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"726d07e0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ee7261c-b4bf-41a0-ba3a-aae46a03a571","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3620ea9c-f922-4848-908b-8f1cb83ac6e6","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377857.3814049} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":104,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.17132,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"726d5600-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"726d5600-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/0a862d47-fe81-4492-9ef2-0757d87db539","user":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"4d1fb0403e3da8157bfd9303b92609bf"} gateway-1 | {"time_local":"03/Sep/2024:15:37:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"815","request_time":"0.154","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4d1fb0403e3da8157bfd9303b92609bf"} experiment-1 | {"level":"info","message":"POST /experiments? 201 149ms","method":"POST","requestID":"4d1fb0403e3da8157bfd9303b92609bf","responseTime":149,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"726d07e0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/c4796211-c737-47dc-b50d-287f99dc335e/signaling 200 13ms","method":"POST","requestID":"726d07e0-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/devices/c4796211-c737-47dc-b50d-287f99dc335e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"726d5600-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571/signaling 200 12ms","method":"POST","requestID":"726d5600-6a0a-11ef-9b41-2363e6623fc8","responseTime":12,"status":200,"url":"/devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1N30.Bl7zGerHenBXqLfiZ7NbBtCHrLi7XGeK3uHK2jd_CrM","level":"info","message":"auth send jwt","requestID":"47e30f5e28995eb4ba14253c29878d66"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"47e30f5e28995eb4ba14253c29878d66","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"47e30f5e28995eb4ba14253c29878d66"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"726fc700-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":105,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:37Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":105,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.739721,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:37Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":106,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"47e30f5e28995eb4ba14253c29878d66","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377857,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1N30.Bl7zGerHenBXqLfiZ7NbBtCHrLi7XGeK3uHK2jd_CrM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"47e30f5e28995eb4ba14253c29878d66","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4796211-c737-47dc-b50d-287f99dc335e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"176b26c1-dfb8-4be1-a229-53d630f7fc2c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377857.3954253} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":106,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.204567,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4796211-c737-47dc-b50d-287f99dc335e","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"726fc700-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c4796211-c737-47dc-b50d-287f99dc335e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"726fc700-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ee7261c-b4bf-41a0-ba3a-aae46a03a571","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ee7261c-b4bf-41a0-ba3a-aae46a03a571","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:36.600959843Z"}]},"request_id":"9f2dd791-bc20-47a0-923d-3e89c798552f","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377857.3993835} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"726fc700-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/c4796211-c737-47dc-b50d-287f99dc335e/signaling 200 8ms","method":"POST","requestID":"726fc700-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/devices/c4796211-c737-47dc-b50d-287f99dc335e/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"47e30f5e28995eb4ba14253c29878d66","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0a862d47-fe81-4492-9ef2-0757d87db539"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"4d1fb0403e3da8157bfd9303b92609bf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0a862d47-fe81-4492-9ef2-0757d87db539"},"level":"info","message":"Building connection plan","requestID":"4d1fb0403e3da8157bfd9303b92609bf"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"32dc51f9-1165-4eec-b72e-970172b7d467"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"90077bd3-d277-4219-8cd9-a277dca90eb3"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"8660fd17-76c5-4f0c-88c6-2e6781236a36"}]},"level":"info","message":"Built pairwise service configurations","requestID":"4d1fb0403e3da8157bfd9303b92609bf"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/c4796211-c737-47dc-b50d-287f99dc335e"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"4d1fb0403e3da8157bfd9303b92609bf"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"72714da0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"47e30f5e28995eb4ba14253c29878d66"} device-1 | {"level":"info","message":"GET /devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571? 200 14ms","method":"GET","requestID":"47e30f5e28995eb4ba14253c29878d66","responseTime":14,"status":200,"url":"/devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571?"} gateway-1 | {"time_local":"03/Sep/2024:15:37:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571? 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":"47e30f5e28995eb4ba14253c29878d66"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":107,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:37Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":107,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.707074,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:37Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"72714da0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377857,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1N30.Bl7zGerHenBXqLfiZ7NbBtCHrLi7XGeK3uHK2jd_CrM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"72714da0-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1N30.Bl7zGerHenBXqLfiZ7NbBtCHrLi7XGeK3uHK2jd_CrM","level":"info","message":"auth send jwt","requestID":"0fe3a7f359f8b09b65dfb7ac369b7248"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0fe3a7f359f8b09b65dfb7ac369b7248","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0fe3a7f359f8b09b65dfb7ac369b7248"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":108,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:37Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":108,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.292741,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4796211-c737-47dc-b50d-287f99dc335e","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"0fe3a7f359f8b09b65dfb7ac369b7248","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/c4796211-c737-47dc-b50d-287f99dc335e","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377857,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1N30.Bl7zGerHenBXqLfiZ7NbBtCHrLi7XGeK3uHK2jd_CrM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0fe3a7f359f8b09b65dfb7ac369b7248","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","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%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"86ada743-aded-4626-a777-e54475dfb26a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377857.4190567} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"00cf7a84-70a0-49cc-aa7c-136a16e8d50e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377857.4193063} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4796211-c737-47dc-b50d-287f99dc335e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4796211-c737-47dc-b50d-287f99dc335e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:36.651049497Z"}]},"request_id":"33b94ca2-0ae1-48bd-9c13-cb092fad2788","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377857.4201803} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"72714da0-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0fe3a7f359f8b09b65dfb7ac369b7248","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0fe3a7f359f8b09b65dfb7ac369b7248"} gateway-1 | {"time_local":"03/Sep/2024:15:37:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c4796211-c737-47dc-b50d-287f99dc335e? 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":"0fe3a7f359f8b09b65dfb7ac369b7248"} device-1 | {"level":"info","message":"GET /devices/c4796211-c737-47dc-b50d-287f99dc335e? 200 14ms","method":"GET","requestID":"0fe3a7f359f8b09b65dfb7ac369b7248","responseTime":14,"status":200,"url":"/devices/c4796211-c737-47dc-b50d-287f99dc335e?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"72714da0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"72714da0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/b6995e0f-2cff-46aa-84c8-3456a11138cf'","requestID":"72714da0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/b6995e0f-2cff-46aa-84c8-3456a11138cf'","requestID":"72714da0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"72714da0-6a0a-11ef-9b41-2363e6623fc8"} 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":"72714da0-6a0a-11ef-9b41-2363e6623fc8","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":"72714da0-6a0a-11ef-9b41-2363e6623fc8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0a862d47-fe81-4492-9ef2-0757d87db539"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"4d1fb0403e3da8157bfd9303b92609bf"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"727b38b0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":109,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:37Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ee7261c-b4bf-41a0-ba3a-aae46a03a571","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2a7f3838-d945-4563-8240-61d3a6013e70","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377857.471872} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":109,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.697191,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"727b38b0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"727b38b0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"727b38b0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571/signaling 200 9ms","method":"POST","requestID":"727b38b0-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"727ce660-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":110,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:37Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4796211-c737-47dc-b50d-287f99dc335e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eab4c748-858c-43d7-99bf-c2e9504b0020","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377857.4825025} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":110,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.515533,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4796211-c737-47dc-b50d-287f99dc335e","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"727ce660-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c4796211-c737-47dc-b50d-287f99dc335e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"727ce660-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"727ce660-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/c4796211-c737-47dc-b50d-287f99dc335e/signaling 200 9ms","method":"POST","requestID":"727ce660-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/devices/c4796211-c737-47dc-b50d-287f99dc335e/signaling"} device-1 | {"device":"c4796211-c737-47dc-b50d-287f99dc335e","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":"b6995e0f-2cff-46aa-84c8-3456a11138cf","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"8ee7261c-b4bf-41a0-ba3a-aae46a03a571","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":"b6995e0f-2cff-46aa-84c8-3456a11138cf","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"8ee7261c-b4bf-41a0-ba3a-aae46a03a571","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":"8ee7261c-b4bf-41a0-ba3a-aae46a03a571","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":"8ee7261c-b4bf-41a0-ba3a-aae46a03a571","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":"8ee7261c-b4bf-41a0-ba3a-aae46a03a571","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/b6995e0f-2cff-46aa-84c8-3456a11138cf' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b6995e0f-2cff-46aa-84c8-3456a11138cf","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f91a7f3e364b3714ee33203f1903a835","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f91a7f3e364b3714ee33203f1903a835","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/8ee7261c-b4bf-41a0-ba3a-aae46a03a571"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/c4796211-c737-47dc-b50d-287f99dc335e"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/b6995e0f-2cff-46aa-84c8-3456a11138cf"}}},"level":"info","message":"received a callback","requestID":"f91a7f3e364b3714ee33203f1903a835"} device-1 | {"device":"c4796211-c737-47dc-b50d-287f99dc335e","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":"c4796211-c737-47dc-b50d-287f99dc335e","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":"c4796211-c737-47dc-b50d-287f99dc335e","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 11ms","method":"POST","requestID":"f91a7f3e364b3714ee33203f1903a835","responseTime":11,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:37:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch","requestID":"f91a7f3e364b3714ee33203f1903a835"} device-1 | {"data":{"peerconnection":"b6995e0f-2cff-46aa-84c8-3456a11138cf","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"8ee7261c-b4bf-41a0-ba3a-aae46a03a571","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":"c4796211-c737-47dc-b50d-287f99dc335e","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":"8ee7261c-b4bf-41a0-ba3a-aae46a03a571","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":"c4796211-c737-47dc-b50d-287f99dc335e","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":"b6995e0f-2cff-46aa-84c8-3456a11138cf","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/b6995e0f-2cff-46aa-84c8-3456a11138cf' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b6995e0f-2cff-46aa-84c8-3456a11138cf","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b42e469bb1ee784d91469965e7959feb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b42e469bb1ee784d91469965e7959feb","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/8ee7261c-b4bf-41a0-ba3a-aae46a03a571"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c4796211-c737-47dc-b50d-287f99dc335e"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/b6995e0f-2cff-46aa-84c8-3456a11138cf"}}},"level":"info","message":"received a callback","requestID":"b42e469bb1ee784d91469965e7959feb"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"73babd90-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":111,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:39Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb6995e0f-2cff-46aa-84c8-3456a11138cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0b059525-e5f2-41f5-a885-fc4f89008009","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377859.5679677} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":111,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.348422,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b6995e0f-2cff-46aa-84c8-3456a11138cf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"73babd90-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/b6995e0f-2cff-46aa-84c8-3456a11138cf","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":"73babd90-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"73babd90-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /peerconnections/b6995e0f-2cff-46aa-84c8-3456a11138cf 200 13ms","method":"GET","requestID":"73babd90-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/peerconnections/b6995e0f-2cff-46aa-84c8-3456a11138cf"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 42ms","method":"POST","requestID":"b42e469bb1ee784d91469965e7959feb","responseTime":42,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:37:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch","requestID":"b42e469bb1ee784d91469965e7959feb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"73c03bd0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":112,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:39Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ee7261c-b4bf-41a0-ba3a-aae46a03a571","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"19b0f988-90c3-4e97-84a4-e5ec142d0a9c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377859.6033647} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":112,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.204954,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"73c03bd0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"73c03bd0-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"73c03bd0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571/signaling 200 12ms","method":"POST","requestID":"73c03bd0-6a0a-11ef-9b41-2363e6623fc8","responseTime":12,"status":200,"url":"/devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"73c2acd0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":113,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:39Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4796211-c737-47dc-b50d-287f99dc335e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6af410e2-2fed-462d-9377-1df1da9a399b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377859.6210754} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":113,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.48831,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4796211-c737-47dc-b50d-287f99dc335e","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"73c2acd0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c4796211-c737-47dc-b50d-287f99dc335e","object_type":"device","rebac_allow":false,"scope_allow":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":"73c2acd0-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"73c2acd0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/c4796211-c737-47dc-b50d-287f99dc335e/signaling 200 15ms","method":"POST","requestID":"73c2acd0-6a0a-11ef-9b41-2363e6623fc8","responseTime":15,"status":200,"url":"/devices/c4796211-c737-47dc-b50d-287f99dc335e/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1OX0.nXME7ZbrhOhD51wVvhyugX5Txi32PJiB2vi7_4XoJU0","level":"info","message":"auth send jwt","requestID":"cb191eb3b8c7ebc586a32a1818f20f51"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"cb191eb3b8c7ebc586a32a1818f20f51","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/0a862d47-fe81-4492-9ef2-0757d87db539","requestID":"cb191eb3b8c7ebc586a32a1818f20f51"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":114,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:39Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":114,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.053706,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/0a862d47-fe81-4492-9ef2-0757d87db539","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"cb191eb3b8c7ebc586a32a1818f20f51","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/0a862d47-fe81-4492-9ef2-0757d87db539","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377859,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1OX0.nXME7ZbrhOhD51wVvhyugX5Txi32PJiB2vi7_4XoJU0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cb191eb3b8c7ebc586a32a1818f20f51","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/0a862d47-fe81-4492-9ef2-0757d87db539","requestID":"cb191eb3b8c7ebc586a32a1818f20f51"} gateway-1 | {"time_local":"03/Sep/2024:15:37:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/0a862d47-fe81-4492-9ef2-0757d87db539 HTTP/1.1","status": "200","body_bytes_sent":"888","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cb191eb3b8c7ebc586a32a1818f20f51"} experiment-1 | {"level":"info","message":"GET /experiments/0a862d47-fe81-4492-9ef2-0757d87db539 200 16ms","method":"GET","requestID":"cb191eb3b8c7ebc586a32a1818f20f51","responseTime":16,"status":200,"url":"/experiments/0a862d47-fe81-4492-9ef2-0757d87db539"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1OX0.nXME7ZbrhOhD51wVvhyugX5Txi32PJiB2vi7_4XoJU0","level":"info","message":"auth send jwt","requestID":"e37c092d79d89d3bd0024b4dae4ad10e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e37c092d79d89d3bd0024b4dae4ad10e","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/0a862d47-fe81-4492-9ef2-0757d87db539","requestID":"e37c092d79d89d3bd0024b4dae4ad10e"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":115,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:39Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":115,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.275312,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:39Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/0a862d47-fe81-4492-9ef2-0757d87db539","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"e37c092d79d89d3bd0024b4dae4ad10e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/0a862d47-fe81-4492-9ef2-0757d87db539","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377859,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1OX0.nXME7ZbrhOhD51wVvhyugX5Txi32PJiB2vi7_4XoJU0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e37c092d79d89d3bd0024b4dae4ad10e","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0a862d47-fe81-4492-9ef2-0757d87db539"},"level":"info","message":"Attempting to finish experiment","requestID":"e37c092d79d89d3bd0024b4dae4ad10e"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"73cd3420-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":116,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:39Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":116,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.839462,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:39Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b6995e0f-2cff-46aa-84c8-3456a11138cf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"73cd3420-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:http://localhost/peerconnections/b6995e0f-2cff-46aa-84c8-3456a11138cf","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377859,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1OX0.nXME7ZbrhOhD51wVvhyugX5Txi32PJiB2vi7_4XoJU0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"73cd3420-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"8ee7261c-b4bf-41a0-ba3a-aae46a03a571","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":"8ee7261c-b4bf-41a0-ba3a-aae46a03a571","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":"c4796211-c737-47dc-b50d-287f99dc335e","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":"c4796211-c737-47dc-b50d-287f99dc335e","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":"c4796211-c737-47dc-b50d-287f99dc335e","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":"8ee7261c-b4bf-41a0-ba3a-aae46a03a571","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/b6995e0f-2cff-46aa-84c8-3456a11138cf' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/b6995e0f-2cff-46aa-84c8-3456a11138cf' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b6995e0f-2cff-46aa-84c8-3456a11138cf","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb6995e0f-2cff-46aa-84c8-3456a11138cf': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb6995e0f-2cff-46aa-84c8-3456a11138cf","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"d542d6b8-85f2-49b7-9421-3bf0179d5399","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377859.7126834} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"84a159d0-8593-4661-a550-20cdeea566f9","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377859.713438} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"73cd3420-6a0a-11ef-9b41-2363e6623fc8","responseTime":15,"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/8ee7261c-b4bf-41a0-ba3a-aae46a03a571"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/c4796211-c737-47dc-b50d-287f99dc335e"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/b6995e0f-2cff-46aa-84c8-3456a11138cf"}}},"level":"info","message":"received a callback","requestID":"05fbd80bfbb2b4ab65494f05a8491d35"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"05fbd80bfbb2b4ab65494f05a8491d35","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"05fbd80bfbb2b4ab65494f05a8491d35","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"88b027671b86ca35cc1fc73e6866cc76","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"88b027671b86ca35cc1fc73e6866cc76","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/8ee7261c-b4bf-41a0-ba3a-aae46a03a571"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/c4796211-c737-47dc-b50d-287f99dc335e"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/b6995e0f-2cff-46aa-84c8-3456a11138cf"}}},"level":"info","message":"received a callback","requestID":"88b027671b86ca35cc1fc73e6866cc76"} device-1 | {"data":{"peerconnection":"b6995e0f-2cff-46aa-84c8-3456a11138cf","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"73cd3420-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"DELETE /peerconnections/b6995e0f-2cff-46aa-84c8-3456a11138cf 204 54ms","method":"DELETE","requestID":"73cd3420-6a0a-11ef-9b41-2363e6623fc8","responseTime":54,"status":204,"url":"/peerconnections/b6995e0f-2cff-46aa-84c8-3456a11138cf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0a862d47-fe81-4492-9ef2-0757d87db539"},"level":"info","message":"Successfully finished experiment","requestID":"e37c092d79d89d3bd0024b4dae4ad10e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"73d9de50-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":117,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:39Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ee7261c-b4bf-41a0-ba3a-aae46a03a571","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bf6bb275-870b-4ce0-8b68-57047ea03f12","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377859.7745543} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":117,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.192764,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"73d9de50-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571","object_type":"device","rebac_allow":false,"scope_allow":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":"73d9de50-6a0a-11ef-9b41-2363e6623fc8","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0a862d47-fe81-4492-9ef2-0757d87db539': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0a862d47-fe81-4492-9ef2-0757d87db539","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"bd5bb8c5-cc9e-47ec-8ec7-c75ae6c71281","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377859.7773771} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"71a089e6-6894-4e24-a4f6-8524c1fd3af5","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377859.7783394} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"e37c092d79d89d3bd0024b4dae4ad10e","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"73d9de50-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571/signaling 200 19ms","method":"POST","requestID":"73d9de50-6a0a-11ef-9b41-2363e6623fc8","responseTime":19,"status":200,"url":"/devices/8ee7261c-b4bf-41a0-ba3a-aae46a03a571/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"73dd87d0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":118,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:39Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4796211-c737-47dc-b50d-287f99dc335e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ff5622e5-3a20-459a-b3bb-61eaef8bdb65","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377859.7974021} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":118,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.123618,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4796211-c737-47dc-b50d-287f99dc335e","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"73dd87d0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c4796211-c737-47dc-b50d-287f99dc335e","object_type":"device","rebac_allow":false,"scope_allow":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":"73dd87d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"73dd87d0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/c4796211-c737-47dc-b50d-287f99dc335e/signaling 200 16ms","method":"POST","requestID":"73dd87d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":16,"status":200,"url":"/devices/c4796211-c737-47dc-b50d-287f99dc335e/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/0a862d47-fe81-4492-9ef2-0757d87db539","requestID":"e37c092d79d89d3bd0024b4dae4ad10e"} gateway-1 | {"time_local":"03/Sep/2024:15:37:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/0a862d47-fe81-4492-9ef2-0757d87db539 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.194","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e37c092d79d89d3bd0024b4dae4ad10e"} experiment-1 | {"level":"info","message":"DELETE /experiments/0a862d47-fe81-4492-9ef2-0757d87db539 204 191ms","method":"DELETE","requestID":"e37c092d79d89d3bd0024b4dae4ad10e","responseTime":191,"status":204,"url":"/experiments/0a862d47-fe81-4492-9ef2-0757d87db539"} gateway-1 | {"time_local":"03/Sep/2024:15:37:39 +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.694","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"25496023eecd3c21ce05269704fa79ae"} gateway-1 | {"time_local":"03/Sep/2024:15:37:39 +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.686","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"1ed89ee6e7fa28a8decf0ae2be57519f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 143ms","method":"POST","requestID":"05fbd80bfbb2b4ab65494f05a8491d35","responseTime":143,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:37:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.149","http_referrer":"","http_user_agent":"node-fetch","requestID":"05fbd80bfbb2b4ab65494f05a8491d35"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 141ms","method":"POST","requestID":"88b027671b86ca35cc1fc73e6866cc76","responseTime":141,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:37:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.149","http_referrer":"","http_user_agent":"node-fetch","requestID":"88b027671b86ca35cc1fc73e6866cc76"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1OX0.nXME7ZbrhOhD51wVvhyugX5Txi32PJiB2vi7_4XoJU0","level":"info","message":"auth send jwt","requestID":"a54f45483db82c08af3969f546abea90"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a54f45483db82c08af3969f546abea90","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/c4796211-c737-47dc-b50d-287f99dc335e' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"a54f45483db82c08af3969f546abea90"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":119,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:39Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":119,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.797596,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:39Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a54f45483db82c08af3969f546abea90","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377859,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1OX0.nXME7ZbrhOhD51wVvhyugX5Txi32PJiB2vi7_4XoJU0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a54f45483db82c08af3969f546abea90","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/8ee7261c-b4bf-41a0-ba3a-aae46a03a571' 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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5daa01e3-4f1c-4286-b2c5-b186235028b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"17ef9da7-4485-45eb-9964-0e22d1ca9283","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377859.8916266} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a54f45483db82c08af3969f546abea90","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"197b09c0-d949-4ce8-bd1f-6274dde1f888","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377859.8972754} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"a54f45483db82c08af3969f546abea90","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5daa01e3-4f1c-4286-b2c5-b186235028b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"a0c3539a-bdf1-4f59-9f76-8cf6718949ae","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377859.9067593} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"46d60cfb-8211-4298-a0de-ba22e0538024","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377859.9069688} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"a54f45483db82c08af3969f546abea90","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5daa01e3-4f1c-4286-b2c5-b186235028b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5daa01e3-4f1c-4286-b2c5-b186235028b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:39.906745917Z"}]},"request_id":"fbea7178-d09e-406e-b21c-d33991a32ce7","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377859.911702} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a54f45483db82c08af3969f546abea90","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a54f45483db82c08af3969f546abea90"} gateway-1 | {"time_local":"03/Sep/2024:15:37:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.057","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a54f45483db82c08af3969f546abea90"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"a54f45483db82c08af3969f546abea90","responseTime":48,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1OX0.nXME7ZbrhOhD51wVvhyugX5Txi32PJiB2vi7_4XoJU0","level":"info","message":"auth send jwt","requestID":"a213f36e3fc3b3a4098f8d77215aa845"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a213f36e3fc3b3a4098f8d77215aa845","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a213f36e3fc3b3a4098f8d77215aa845"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":120,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:39Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":120,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.806134,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:39Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a213f36e3fc3b3a4098f8d77215aa845","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377859,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1OX0.nXME7ZbrhOhD51wVvhyugX5Txi32PJiB2vi7_4XoJU0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a213f36e3fc3b3a4098f8d77215aa845","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fff8ad666-84f9-428c-bf34-c350689558be","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"201bad2d-fc6d-4eba-90ad-5a7229687768","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377859.9374907} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a213f36e3fc3b3a4098f8d77215aa845","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"81e21814-3e27-489a-948c-703280cbc774","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377859.942793} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"a213f36e3fc3b3a4098f8d77215aa845","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fff8ad666-84f9-428c-bf34-c350689558be","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"73293262-4eca-4042-9ffc-e759accc85b1","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377859.9592931} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ae139965-bb2f-41ce-bc30-ec2377577e37","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377859.9595087} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"a213f36e3fc3b3a4098f8d77215aa845","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fff8ad666-84f9-428c-bf34-c350689558be","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fff8ad666-84f9-428c-bf34-c350689558be","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:39.959280891Z"}]},"request_id":"59278675-ac31-4c79-87a4-90271c78e5fd","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377859.964548} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a213f36e3fc3b3a4098f8d77215aa845","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a213f36e3fc3b3a4098f8d77215aa845"} gateway-1 | {"time_local":"03/Sep/2024:15:37:39 +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":"a213f36e3fc3b3a4098f8d77215aa845"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"a213f36e3fc3b3a4098f8d77215aa845","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1OX0.nXME7ZbrhOhD51wVvhyugX5Txi32PJiB2vi7_4XoJU0","level":"info","message":"auth send jwt","requestID":"b71677b6ebd56b46d7c85a4ae30c7956"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b71677b6ebd56b46d7c85a4ae30c7956","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"b71677b6ebd56b46d7c85a4ae30c7956"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":121,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:39Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":121,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.724836,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:39Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"b71677b6ebd56b46d7c85a4ae30c7956","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377859,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg1OX0.nXME7ZbrhOhD51wVvhyugX5Txi32PJiB2vi7_4XoJU0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b71677b6ebd56b46d7c85a4ae30c7956","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff17cb9da-9bfb-4a6b-a485-330467af8f98","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"bc1c9475-211a-4814-9f00-1bb52ad6db65","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377859.9932103} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b71677b6ebd56b46d7c85a4ae30c7956","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f580abd9-ae2d-49a5-8d3a-ffda39d0bdc8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377859.9988654} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"b71677b6ebd56b46d7c85a4ae30c7956","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff17cb9da-9bfb-4a6b-a485-330467af8f98","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"c696bb59-aecb-4312-b2d1-ef2b7918daa3","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.0107284} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"215808a2-7940-4fb7-9e87-ff5c1a80190e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.010889} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"b71677b6ebd56b46d7c85a4ae30c7956","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff17cb9da-9bfb-4a6b-a485-330467af8f98","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff17cb9da-9bfb-4a6b-a485-330467af8f98","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:40.010714552Z"}]},"request_id":"2f71e2a7-c7fe-4151-9b54-417a37229afc","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.0159032} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b71677b6ebd56b46d7c85a4ae30c7956","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b71677b6ebd56b46d7c85a4ae30c7956"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"b71677b6ebd56b46d7c85a4ae30c7956","responseTime":45,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"03/Sep/2024:15:37:40 +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":"b71677b6ebd56b46d7c85a4ae30c7956"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw","level":"info","message":"auth send jwt","requestID":"16e1696326545e40d9405e8a3ab4c868"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"16e1696326545e40d9405e8a3ab4c868","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"16e1696326545e40d9405e8a3ab4c868"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":122,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":122,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.761041,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"16e1696326545e40d9405e8a3ab4c868","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377860,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"16e1696326545e40d9405e8a3ab4c868","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8580c56-11c1-47bd-ad4a-dab9a48846d9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"1df6bdaa-5b10-46c0-81b1-d58d0b840006","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.0438983} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"16e1696326545e40d9405e8a3ab4c868","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e622719b-4daa-40dd-9112-0a18cf6c40db","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.0490918} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"16e1696326545e40d9405e8a3ab4c868","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8580c56-11c1-47bd-ad4a-dab9a48846d9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"963ad231-36e7-4836-b312-9a59a84da8b3","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.0692163} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a1fa48ef-1a5c-43f1-af17-1fe51b2de521","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.0693502} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"16e1696326545e40d9405e8a3ab4c868","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8580c56-11c1-47bd-ad4a-dab9a48846d9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8580c56-11c1-47bd-ad4a-dab9a48846d9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:40.069190256Z"}]},"request_id":"c336111a-5aa0-4c18-869d-53b8b318eaca","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.0761824} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"16e1696326545e40d9405e8a3ab4c868","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"16e1696326545e40d9405e8a3ab4c868"} gateway-1 | {"time_local":"03/Sep/2024:15:37:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.059","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"16e1696326545e40d9405e8a3ab4c868"} device-1 | {"level":"info","message":"POST /devices? 201 54ms","method":"POST","requestID":"16e1696326545e40d9405e8a3ab4c868","responseTime":54,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw","level":"info","message":"auth send jwt","requestID":"d30ed2ad32dcc6290fd794848cba7cb8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d30ed2ad32dcc6290fd794848cba7cb8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"d30ed2ad32dcc6290fd794848cba7cb8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":123,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":123,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.269924,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"d30ed2ad32dcc6290fd794848cba7cb8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377860,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d30ed2ad32dcc6290fd794848cba7cb8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55326527-aec5-44f3-8a89-25d5798886d0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a1190be8-5eb0-4ed7-b8c1-cc1ef0b568b5","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.113577} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d30ed2ad32dcc6290fd794848cba7cb8","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cba3b45b-bb51-4f8f-8f84-43f3b76d3fec","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.1224067} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"d30ed2ad32dcc6290fd794848cba7cb8","responseTime":8,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55326527-aec5-44f3-8a89-25d5798886d0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"df108598-63c2-4366-ad2b-a40b07c62250","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.1378646} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1a754be0-4495-4a90-81a8-1ce523584abc","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.1381521} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"d30ed2ad32dcc6290fd794848cba7cb8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55326527-aec5-44f3-8a89-25d5798886d0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55326527-aec5-44f3-8a89-25d5798886d0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:40.137841951Z"}]},"request_id":"7d2398cb-b015-4264-b61a-acc93cb50b52","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.1468823} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"d30ed2ad32dcc6290fd794848cba7cb8","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d30ed2ad32dcc6290fd794848cba7cb8"} gateway-1 | {"time_local":"03/Sep/2024:15:37:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.069","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d30ed2ad32dcc6290fd794848cba7cb8"} device-1 | {"level":"info","message":"POST /devices? 201 63ms","method":"POST","requestID":"d30ed2ad32dcc6290fd794848cba7cb8","responseTime":63,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw","level":"info","message":"auth send jwt","requestID":"4d5e5912db29d64e2b2975d128bef56c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4d5e5912db29d64e2b2975d128bef56c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"4d5e5912db29d64e2b2975d128bef56c"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":124,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":124,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.16041,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"4d5e5912db29d64e2b2975d128bef56c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377860,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4d5e5912db29d64e2b2975d128bef56c","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F87d88d93-35c3-455e-8ce9-e39e4a9d82b3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"96130b08-403b-4236-a14a-b84a220c8c9d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.1907568} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4d5e5912db29d64e2b2975d128bef56c","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"107b46ef-a47e-4b0d-87a7-d81ff0c3540e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.201038} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"4d5e5912db29d64e2b2975d128bef56c","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F87d88d93-35c3-455e-8ce9-e39e4a9d82b3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"67942855-84ca-4797-8aa4-141a773f2da1","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.2183888} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7f6b4448-c8d6-43af-9354-93c8749fdb94","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.2186432} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"4d5e5912db29d64e2b2975d128bef56c","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F87d88d93-35c3-455e-8ce9-e39e4a9d82b3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F87d88d93-35c3-455e-8ce9-e39e4a9d82b3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:40.218372353Z"}]},"request_id":"e91d8d98-7020-4c8f-9288-67b1b5353c2b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.2252307} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4d5e5912db29d64e2b2975d128bef56c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4d5e5912db29d64e2b2975d128bef56c"} gateway-1 | {"time_local":"03/Sep/2024:15:37:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.075","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4d5e5912db29d64e2b2975d128bef56c"} device-1 | {"level":"info","message":"POST /devices? 201 69ms","method":"POST","requestID":"4d5e5912db29d64e2b2975d128bef56c","responseTime":69,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw","level":"info","message":"auth send jwt","requestID":"f5a0169e81eb7089d9c211a10ce6187b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f5a0169e81eb7089d9c211a10ce6187b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"f5a0169e81eb7089d9c211a10ce6187b"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":125,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":125,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.290642,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"f5a0169e81eb7089d9c211a10ce6187b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377860,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f5a0169e81eb7089d9c211a10ce6187b","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faad2e605-3544-4fbb-8c62-b2df9368e6f3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"71679576-f1cd-4554-a850-f39f0a171a49","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.2624142} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f5a0169e81eb7089d9c211a10ce6187b","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ce04bebb-cf81-4949-aa32-57f6d5c0b86b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.2703917} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"f5a0169e81eb7089d9c211a10ce6187b","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faad2e605-3544-4fbb-8c62-b2df9368e6f3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"0ed2f18c-3b1b-44aa-928b-963befc5af7a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.2843208} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d35405c6-c4df-4164-9a28-972201868c05","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.2845209} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"f5a0169e81eb7089d9c211a10ce6187b","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faad2e605-3544-4fbb-8c62-b2df9368e6f3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faad2e605-3544-4fbb-8c62-b2df9368e6f3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:40.284304197Z"}]},"request_id":"8cc6becf-0464-48d4-bbee-da3d106c0350","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.2894595} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f5a0169e81eb7089d9c211a10ce6187b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f5a0169e81eb7089d9c211a10ce6187b"} gateway-1 | {"time_local":"03/Sep/2024:15:37:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.061","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f5a0169e81eb7089d9c211a10ce6187b"} device-1 | {"level":"info","message":"POST /devices? 201 55ms","method":"POST","requestID":"f5a0169e81eb7089d9c211a10ce6187b","responseTime":55,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw","level":"info","message":"auth send jwt","requestID":"cbe350c8acd65878b14a67377e9cf099"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"cbe350c8acd65878b14a67377e9cf099","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"cbe350c8acd65878b14a67377e9cf099"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":126,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":126,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.827629,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"cbe350c8acd65878b14a67377e9cf099","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377860,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cbe350c8acd65878b14a67377e9cf099","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5733339-9337-4587-bc11-a175086d5d5a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"6875e3e1-4d1d-41a9-9ce1-ae4230ad8a8c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.322706} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"cbe350c8acd65878b14a67377e9cf099","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d87a3b45-9fef-4655-a7f5-7c7d129f8047","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.330254} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"cbe350c8acd65878b14a67377e9cf099","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5733339-9337-4587-bc11-a175086d5d5a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"e6a51a00-697b-4dd1-8c9a-087f09f4e0a8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.3470793} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9ca4c34f-fd13-4bb1-b6be-7f59a1b4b297","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.3474724} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"cbe350c8acd65878b14a67377e9cf099","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5733339-9337-4587-bc11-a175086d5d5a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5733339-9337-4587-bc11-a175086d5d5a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:40.347029986Z"}]},"request_id":"3dbc0fbf-d54c-49c9-bfc1-cc37e766d5cd","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.3555255} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"cbe350c8acd65878b14a67377e9cf099","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"cbe350c8acd65878b14a67377e9cf099"} gateway-1 | {"time_local":"03/Sep/2024:15:37:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.066","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cbe350c8acd65878b14a67377e9cf099"} device-1 | {"level":"info","message":"POST /devices? 201 59ms","method":"POST","requestID":"cbe350c8acd65878b14a67377e9cf099","responseTime":59,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw","level":"info","message":"auth send jwt","requestID":"48aea68d0ed60e4cbd3f0b726bb85947"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"48aea68d0ed60e4cbd3f0b726bb85947","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"48aea68d0ed60e4cbd3f0b726bb85947"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":127,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":127,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.143506,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"48aea68d0ed60e4cbd3f0b726bb85947","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377860,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"48aea68d0ed60e4cbd3f0b726bb85947","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fda3d53ca-f189-4d6d-a3f7-17f911a9e7de","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"5fedce0d-d6fe-4ffc-bd09-0e786b10a6b2","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.390542} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"48aea68d0ed60e4cbd3f0b726bb85947","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"53d19c28-5f0c-4b3e-aca6-6988d80369f2","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.3983338} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"48aea68d0ed60e4cbd3f0b726bb85947","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fda3d53ca-f189-4d6d-a3f7-17f911a9e7de","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"38df42e9-a526-49d2-be42-a071de306373","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.4124067} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"74661f36-b1ad-4975-84cf-cf989fea2e8a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.412753} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"48aea68d0ed60e4cbd3f0b726bb85947","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fda3d53ca-f189-4d6d-a3f7-17f911a9e7de","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fda3d53ca-f189-4d6d-a3f7-17f911a9e7de","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:40.412382169Z"}]},"request_id":"0348a895-a04c-4285-b3cc-c09a5160cdea","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.4200962} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"48aea68d0ed60e4cbd3f0b726bb85947","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"48aea68d0ed60e4cbd3f0b726bb85947"} device-1 | {"level":"info","message":"POST /devices? 201 54ms","method":"POST","requestID":"48aea68d0ed60e4cbd3f0b726bb85947","responseTime":54,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"03/Sep/2024:15:37:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.061","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"48aea68d0ed60e4cbd3f0b726bb85947"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw","level":"info","message":"auth send jwt","requestID":"37417deb051a2ee1a43e4eee7e25b365"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"37417deb051a2ee1a43e4eee7e25b365","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"37417deb051a2ee1a43e4eee7e25b365"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":128,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":128,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.875603,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"37417deb051a2ee1a43e4eee7e25b365","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377860,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"37417deb051a2ee1a43e4eee7e25b365","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71c86f77-a696-451e-ae78-5e3d16088ec8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c213fc03-c000-4186-abba-035c500b5938","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.4538426} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"37417deb051a2ee1a43e4eee7e25b365","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fd621304-225f-4230-aa94-1468a8779e40","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.4617908} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"37417deb051a2ee1a43e4eee7e25b365","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71c86f77-a696-451e-ae78-5e3d16088ec8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"45ed261c-3878-4321-aba2-5276bdd725aa","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.4762964} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"23033bd3-4324-4dd5-a060-5c072ec97d7e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.4765866} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"37417deb051a2ee1a43e4eee7e25b365","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71c86f77-a696-451e-ae78-5e3d16088ec8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71c86f77-a696-451e-ae78-5e3d16088ec8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:40.476256322Z"}]},"request_id":"d5acf991-d7e0-4c39-9f6b-45f71dba0495","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.4837248} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"37417deb051a2ee1a43e4eee7e25b365","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"37417deb051a2ee1a43e4eee7e25b365"} gateway-1 | {"time_local":"03/Sep/2024:15:37:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"278","request_time":"0.061","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"37417deb051a2ee1a43e4eee7e25b365"} device-1 | {"level":"info","message":"POST /devices? 201 55ms","method":"POST","requestID":"37417deb051a2ee1a43e4eee7e25b365","responseTime":55,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw","level":"info","message":"auth send jwt","requestID":"1deb67fd63bc01dd42eff8132c488237"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"1deb67fd63bc01dd42eff8132c488237","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1deb67fd63bc01dd42eff8132c488237"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":129,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":129,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.304719,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"1deb67fd63bc01dd42eff8132c488237","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377860,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1deb67fd63bc01dd42eff8132c488237","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faf29ec1d-68fb-4fff-b9a4-89ebbcf1af46","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"164c5995-1a8d-4106-81c8-8912530e4074","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.5284789} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"1deb67fd63bc01dd42eff8132c488237","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c1d2df94-285f-4095-a2f7-8982f1575445","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.536986} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"1deb67fd63bc01dd42eff8132c488237","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faf29ec1d-68fb-4fff-b9a4-89ebbcf1af46","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"1bf0228d-a15a-4182-9113-2246e5dc8272","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.5520887} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0ad4af2a-fdac-4f1a-bc0f-fe13ff42a65b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.55285} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"1deb67fd63bc01dd42eff8132c488237","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faf29ec1d-68fb-4fff-b9a4-89ebbcf1af46","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faf29ec1d-68fb-4fff-b9a4-89ebbcf1af46","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:40.552060583Z"}]},"request_id":"c97648c2-75dd-4490-9df8-ba6114e79acf","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.5618956} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1deb67fd63bc01dd42eff8132c488237","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1deb67fd63bc01dd42eff8132c488237"} device-1 | {"level":"info","message":"POST /devices? 201 68ms","method":"POST","requestID":"1deb67fd63bc01dd42eff8132c488237","responseTime":68,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"03/Sep/2024:15:37:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"1069","request_time":"0.075","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1deb67fd63bc01dd42eff8132c488237"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw","level":"info","message":"auth send jwt","requestID":"54d54e1c0e023c505ce0746c1516f15c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"54d54e1c0e023c505ce0746c1516f15c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"54d54e1c0e023c505ce0746c1516f15c"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":130,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":130,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.219273,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"54d54e1c0e023c505ce0746c1516f15c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377860,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"54d54e1c0e023c505ce0746c1516f15c","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffed7ef72-685a-4371-a52b-4f3a29334373","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c5b6abc3-040c-4f1f-a9ac-c06260f02238","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.5999084} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"54d54e1c0e023c505ce0746c1516f15c","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"05a00f4d-cf95-4e8c-892b-82785de03b57","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.607532} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"54d54e1c0e023c505ce0746c1516f15c","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffed7ef72-685a-4371-a52b-4f3a29334373","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"dd5eb7ba-1fbd-4f9b-9031-086287fe34f5","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.618819} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a10e708e-5b97-4753-a5aa-a557924b9bdf","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.6189995} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"54d54e1c0e023c505ce0746c1516f15c","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffed7ef72-685a-4371-a52b-4f3a29334373","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffed7ef72-685a-4371-a52b-4f3a29334373","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:40.618786969Z"}]},"request_id":"f4d8e80a-526b-4a6e-8959-eb1982fd424b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.6258862} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"54d54e1c0e023c505ce0746c1516f15c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"54d54e1c0e023c505ce0746c1516f15c"} gateway-1 | {"time_local":"03/Sep/2024:15:37:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"1347","request_time":"0.059","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"54d54e1c0e023c505ce0746c1516f15c"} device-1 | {"level":"info","message":"POST /devices? 201 53ms","method":"POST","requestID":"54d54e1c0e023c505ce0746c1516f15c","responseTime":53,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw","level":"info","message":"auth send jwt","requestID":"1bcfbe084e584d0622c2193472917cdd"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"1bcfbe084e584d0622c2193472917cdd","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1bcfbe084e584d0622c2193472917cdd"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":131,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":131,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.22988,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"1bcfbe084e584d0622c2193472917cdd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377860,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1bcfbe084e584d0622c2193472917cdd","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6442773c-b7ff-41d3-82a2-5a0e7af587b4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"644c6e23-69af-4444-848a-488975351bac","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.6679173} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1bcfbe084e584d0622c2193472917cdd","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e8604922-2832-4792-8089-0c4eee324c9f","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.6756167} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"1bcfbe084e584d0622c2193472917cdd","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6442773c-b7ff-41d3-82a2-5a0e7af587b4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"a08fa84a-7eae-4687-b0be-e3f78a3a1eaa","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.6897316} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3bdade2c-6d0d-4823-b891-f493683ec102","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.690146} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"1bcfbe084e584d0622c2193472917cdd","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6442773c-b7ff-41d3-82a2-5a0e7af587b4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6442773c-b7ff-41d3-82a2-5a0e7af587b4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:40.689708376Z"}]},"request_id":"ddcbcd67-64c2-4168-a968-24c4558adb92","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.6970248} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1bcfbe084e584d0622c2193472917cdd","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1bcfbe084e584d0622c2193472917cdd"} gateway-1 | {"time_local":"03/Sep/2024:15:37:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"1070","request_time":"0.069","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1bcfbe084e584d0622c2193472917cdd"} device-1 | {"level":"info","message":"POST /devices? 201 62ms","method":"POST","requestID":"1bcfbe084e584d0622c2193472917cdd","responseTime":62,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw","level":"info","message":"auth send jwt","requestID":"3fea1ff09acfaae9b95673a69c7fbe3e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3fea1ff09acfaae9b95673a69c7fbe3e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"3fea1ff09acfaae9b95673a69c7fbe3e"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":132,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":132,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.331259,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/af29ec1d-68fb-4fff-b9a4-89ebbcf1af46","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"3fea1ff09acfaae9b95673a69c7fbe3e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/af29ec1d-68fb-4fff-b9a4-89ebbcf1af46","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377860,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3fea1ff09acfaae9b95673a69c7fbe3e","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faf29ec1d-68fb-4fff-b9a4-89ebbcf1af46","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faf29ec1d-68fb-4fff-b9a4-89ebbcf1af46","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:40.552060583Z"}]},"request_id":"cbba171d-5c7c-4557-b2ea-a5939c4f4ec3","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.7317495} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3fea1ff09acfaae9b95673a69c7fbe3e","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4292a393-1671-40e1-a2bc-8328aec57dd7","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.7401733} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"3fea1ff09acfaae9b95673a69c7fbe3e","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faf29ec1d-68fb-4fff-b9a4-89ebbcf1af46","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faf29ec1d-68fb-4fff-b9a4-89ebbcf1af46","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:40.552060583Z"}]},"request_id":"ee86a922-b584-4c68-8087-de173402422d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.7536998} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3fea1ff09acfaae9b95673a69c7fbe3e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"3fea1ff09acfaae9b95673a69c7fbe3e"} gateway-1 | {"time_local":"03/Sep/2024:15:37:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/af29ec1d-68fb-4fff-b9a4-89ebbcf1af46? HTTP/1.1","status": "200","body_bytes_sent":"1141","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3fea1ff09acfaae9b95673a69c7fbe3e"} device-1 | {"level":"info","message":"PATCH /devices/af29ec1d-68fb-4fff-b9a4-89ebbcf1af46? 200 44ms","method":"PATCH","requestID":"3fea1ff09acfaae9b95673a69c7fbe3e","responseTime":44,"status":200,"url":"/devices/af29ec1d-68fb-4fff-b9a4-89ebbcf1af46?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw","level":"info","message":"auth send jwt","requestID":"1287046541bf5046b1cf219d62a41b30"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1287046541bf5046b1cf219d62a41b30","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"1287046541bf5046b1cf219d62a41b30"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":133,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":133,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.406267,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/fed7ef72-685a-4371-a52b-4f3a29334373","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"1287046541bf5046b1cf219d62a41b30","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/fed7ef72-685a-4371-a52b-4f3a29334373","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377860,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1287046541bf5046b1cf219d62a41b30","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffed7ef72-685a-4371-a52b-4f3a29334373","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffed7ef72-685a-4371-a52b-4f3a29334373","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:40.618786969Z"}]},"request_id":"528192a4-af91-4681-81e7-5b4c1106703a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.7831507} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1287046541bf5046b1cf219d62a41b30","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0b8b2170-0a02-41a9-b82f-4792ecd445b5","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.7915533} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"1287046541bf5046b1cf219d62a41b30","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffed7ef72-685a-4371-a52b-4f3a29334373","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffed7ef72-685a-4371-a52b-4f3a29334373","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:40.618786969Z"}]},"request_id":"51d132cc-d978-404b-ad0a-414565ae6a27","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.804703} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1287046541bf5046b1cf219d62a41b30","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"1287046541bf5046b1cf219d62a41b30"} gateway-1 | {"time_local":"03/Sep/2024:15:37:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/fed7ef72-685a-4371-a52b-4f3a29334373? HTTP/1.1","status": "200","body_bytes_sent":"1491","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1287046541bf5046b1cf219d62a41b30"} device-1 | {"level":"info","message":"PATCH /devices/fed7ef72-685a-4371-a52b-4f3a29334373? 200 42ms","method":"PATCH","requestID":"1287046541bf5046b1cf219d62a41b30","responseTime":42,"status":200,"url":"/devices/fed7ef72-685a-4371-a52b-4f3a29334373?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw","level":"info","message":"auth send jwt","requestID":"67003f7e804b004e1d31557afbd7169a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"67003f7e804b004e1d31557afbd7169a","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"67003f7e804b004e1d31557afbd7169a"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":134,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":134,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.359924,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6442773c-b7ff-41d3-82a2-5a0e7af587b4","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"67003f7e804b004e1d31557afbd7169a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/6442773c-b7ff-41d3-82a2-5a0e7af587b4","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377860,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"67003f7e804b004e1d31557afbd7169a","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6442773c-b7ff-41d3-82a2-5a0e7af587b4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6442773c-b7ff-41d3-82a2-5a0e7af587b4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:40.689708376Z"}]},"request_id":"4c929683-4d68-47d7-b697-d69fe8f4b5a4","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.8379006} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"67003f7e804b004e1d31557afbd7169a","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"83b40bee-336b-4bc4-8d2c-dde674560f31","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.8463426} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"67003f7e804b004e1d31557afbd7169a","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6442773c-b7ff-41d3-82a2-5a0e7af587b4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6442773c-b7ff-41d3-82a2-5a0e7af587b4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:40.689708376Z"}]},"request_id":"f9989c8d-cf3e-4e3e-af12-9e31847ac576","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.8571546} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"67003f7e804b004e1d31557afbd7169a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"67003f7e804b004e1d31557afbd7169a"} gateway-1 | {"time_local":"03/Sep/2024:15:37:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/6442773c-b7ff-41d3-82a2-5a0e7af587b4? HTTP/1.1","status": "200","body_bytes_sent":"1142","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"67003f7e804b004e1d31557afbd7169a"} device-1 | {"level":"info","message":"PATCH /devices/6442773c-b7ff-41d3-82a2-5a0e7af587b4? 200 41ms","method":"PATCH","requestID":"67003f7e804b004e1d31557afbd7169a","responseTime":41,"status":200,"url":"/devices/6442773c-b7ff-41d3-82a2-5a0e7af587b4?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw","level":"info","message":"auth send jwt","requestID":"7106cbc81ab1d81844907880f1610473"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7106cbc81ab1d81844907880f1610473","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7106cbc81ab1d81844907880f1610473"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":135,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":135,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.260676,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/af29ec1d-68fb-4fff-b9a4-89ebbcf1af46","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7106cbc81ab1d81844907880f1610473","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/af29ec1d-68fb-4fff-b9a4-89ebbcf1af46","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377860,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7106cbc81ab1d81844907880f1610473","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faf29ec1d-68fb-4fff-b9a4-89ebbcf1af46","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faf29ec1d-68fb-4fff-b9a4-89ebbcf1af46","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:40.552060583Z"}]},"request_id":"1734523e-890d-4713-98ad-8ff3df08d318","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.8831286} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7106cbc81ab1d81844907880f1610473","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":136,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":136,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.453059,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":137,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":137,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.247291,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5daa01e3-4f1c-4286-b2c5-b186235028b0","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7106cbc81ab1d81844907880f1610473","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/5daa01e3-4f1c-4286-b2c5-b186235028b0","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377860,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"7106cbc81ab1d81844907880f1610473","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ff8ad666-84f9-428c-bf34-c350689558be","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7106cbc81ab1d81844907880f1610473","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/ff8ad666-84f9-428c-bf34-c350689558be","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377860,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"7106cbc81ab1d81844907880f1610473","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":138,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Received request.","req_id":139,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":138,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.469289,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fed7ef72-685a-4371-a52b-4f3a29334373","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7106cbc81ab1d81844907880f1610473","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/fed7ef72-685a-4371-a52b-4f3a29334373","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377860,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"7106cbc81ab1d81844907880f1610473","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Sent response.","req_id":139,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.940622,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f17cb9da-9bfb-4a6b-a485-330467af8f98","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7106cbc81ab1d81844907880f1610473","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/f17cb9da-9bfb-4a6b-a485-330467af8f98","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377860,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw"} authorization-1 | {"level":"info","message":"POST /authorize 200 18ms","method":"POST","requestID":"7106cbc81ab1d81844907880f1610473","responseTime":18,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7106cbc81ab1d81844907880f1610473"} gateway-1 | {"time_local":"03/Sep/2024:15:37:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/af29ec1d-68fb-4fff-b9a4-89ebbcf1af46? HTTP/1.1","status": "200","body_bytes_sent":"1141","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7106cbc81ab1d81844907880f1610473"} device-1 | {"level":"info","message":"GET /devices/af29ec1d-68fb-4fff-b9a4-89ebbcf1af46? 200 47ms","method":"GET","requestID":"7106cbc81ab1d81844907880f1610473","responseTime":47,"status":200,"url":"/devices/af29ec1d-68fb-4fff-b9a4-89ebbcf1af46?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw","level":"info","message":"auth send jwt","requestID":"5b15c23e0b3863fc3ed0b0d28422f9f8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5b15c23e0b3863fc3ed0b0d28422f9f8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5b15c23e0b3863fc3ed0b0d28422f9f8"} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Received request.","req_id":140,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Sent response.","req_id":140,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.371858,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fed7ef72-685a-4371-a52b-4f3a29334373","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"5b15c23e0b3863fc3ed0b0d28422f9f8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/fed7ef72-685a-4371-a52b-4f3a29334373","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377860,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5b15c23e0b3863fc3ed0b0d28422f9f8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffed7ef72-685a-4371-a52b-4f3a29334373","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffed7ef72-685a-4371-a52b-4f3a29334373","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:40.618786969Z"}]},"request_id":"e79f6160-5d23-4fa9-b310-d542996c2c81","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377860.940296} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5b15c23e0b3863fc3ed0b0d28422f9f8","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Received request.","req_id":141,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Sent response.","req_id":141,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.055573,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":142,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":142,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.894599,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":143,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":143,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.85997,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c8580c56-11c1-47bd-ad4a-dab9a48846d9","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"5b15c23e0b3863fc3ed0b0d28422f9f8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/c8580c56-11c1-47bd-ad4a-dab9a48846d9","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377860,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"5b15c23e0b3863fc3ed0b0d28422f9f8","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/55326527-aec5-44f3-8a89-25d5798886d0","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"5b15c23e0b3863fc3ed0b0d28422f9f8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/55326527-aec5-44f3-8a89-25d5798886d0","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377860,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"5b15c23e0b3863fc3ed0b0d28422f9f8","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/87d88d93-35c3-455e-8ce9-e39e4a9d82b3","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"5b15c23e0b3863fc3ed0b0d28422f9f8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/87d88d93-35c3-455e-8ce9-e39e4a9d82b3","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377860,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"5b15c23e0b3863fc3ed0b0d28422f9f8","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":144,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":144,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.599135,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":145,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"client_addr":"127.0.0.1:38742","level":"info","msg":"Received request.","req_id":146,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/af29ec1d-68fb-4fff-b9a4-89ebbcf1af46","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"5b15c23e0b3863fc3ed0b0d28422f9f8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/af29ec1d-68fb-4fff-b9a4-89ebbcf1af46","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377860,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"5b15c23e0b3863fc3ed0b0d28422f9f8","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":145,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.069491,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"client_addr":"127.0.0.1:38742","level":"info","msg":"Sent response.","req_id":146,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.934273,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6442773c-b7ff-41d3-82a2-5a0e7af587b4","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"5b15c23e0b3863fc3ed0b0d28422f9f8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/6442773c-b7ff-41d3-82a2-5a0e7af587b4","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377860,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"5b15c23e0b3863fc3ed0b0d28422f9f8","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/aad2e605-3544-4fbb-8c62-b2df9368e6f3","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"5b15c23e0b3863fc3ed0b0d28422f9f8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/aad2e605-3544-4fbb-8c62-b2df9368e6f3","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377860,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw"} authorization-1 | {"level":"info","message":"POST /authorize 200 23ms","method":"POST","requestID":"5b15c23e0b3863fc3ed0b0d28422f9f8","responseTime":23,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5b15c23e0b3863fc3ed0b0d28422f9f8"} gateway-1 | {"time_local":"03/Sep/2024:15:37:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/fed7ef72-685a-4371-a52b-4f3a29334373? HTTP/1.1","status": "200","body_bytes_sent":"1491","request_time":"0.062","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5b15c23e0b3863fc3ed0b0d28422f9f8"} device-1 | {"level":"info","message":"GET /devices/fed7ef72-685a-4371-a52b-4f3a29334373? 200 54ms","method":"GET","requestID":"5b15c23e0b3863fc3ed0b0d28422f9f8","responseTime":54,"status":200,"url":"/devices/fed7ef72-685a-4371-a52b-4f3a29334373?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw","level":"info","message":"auth send jwt","requestID":"ef82b0a3b9f64a449c7589976f5aef4a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ef82b0a3b9f64a449c7589976f5aef4a","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ef82b0a3b9f64a449c7589976f5aef4a"} authorization-1 | {"client_addr":"127.0.0.1:38742","level":"info","msg":"Received request.","req_id":147,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"client_addr":"127.0.0.1:38742","level":"info","msg":"Sent response.","req_id":147,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.311689,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6442773c-b7ff-41d3-82a2-5a0e7af587b4","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"ef82b0a3b9f64a449c7589976f5aef4a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/6442773c-b7ff-41d3-82a2-5a0e7af587b4","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377860,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"ef82b0a3b9f64a449c7589976f5aef4a","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6442773c-b7ff-41d3-82a2-5a0e7af587b4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6442773c-b7ff-41d3-82a2-5a0e7af587b4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:40.689708376Z"}]},"request_id":"0fc4b108-4a5b-4280-b118-7fb5e540d119","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377861.0044} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ef82b0a3b9f64a449c7589976f5aef4a","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:38742","level":"info","msg":"Received request.","req_id":148,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:41Z"} authorization-1 | {"client_addr":"127.0.0.1:38742","level":"info","msg":"Sent response.","req_id":148,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.044655,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:41Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Received request.","req_id":149,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:41Z"} authorization-1 | {"client_addr":"127.0.0.1:32980","level":"info","msg":"Sent response.","req_id":149,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.872966,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:41Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":150,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:41Z"} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Received request.","req_id":151,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:41Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":150,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.394787,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5733339-9337-4587-bc11-a175086d5d5a","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"ef82b0a3b9f64a449c7589976f5aef4a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/e5733339-9337-4587-bc11-a175086d5d5a","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377860,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"ef82b0a3b9f64a449c7589976f5aef4a","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/da3d53ca-f189-4d6d-a3f7-17f911a9e7de","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"ef82b0a3b9f64a449c7589976f5aef4a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/da3d53ca-f189-4d6d-a3f7-17f911a9e7de","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377860,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"ef82b0a3b9f64a449c7589976f5aef4a","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/71c86f77-a696-451e-ae78-5e3d16088ec8","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"ef82b0a3b9f64a449c7589976f5aef4a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/71c86f77-a696-451e-ae78-5e3d16088ec8","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377860,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"ef82b0a3b9f64a449c7589976f5aef4a","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Sent response.","req_id":151,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.557457,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/af29ec1d-68fb-4fff-b9a4-89ebbcf1af46","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"ef82b0a3b9f64a449c7589976f5aef4a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/af29ec1d-68fb-4fff-b9a4-89ebbcf1af46","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377860,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MH0.Bak8OAH4yodmSIHSv3cV16sWdRASPiKBEFHhZLML4Pw"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"ef82b0a3b9f64a449c7589976f5aef4a","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ef82b0a3b9f64a449c7589976f5aef4a"} gateway-1 | {"time_local":"03/Sep/2024:15:37:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6442773c-b7ff-41d3-82a2-5a0e7af587b4? HTTP/1.1","status": "200","body_bytes_sent":"1142","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ef82b0a3b9f64a449c7589976f5aef4a"} device-1 | {"level":"info","message":"GET /devices/6442773c-b7ff-41d3-82a2-5a0e7af587b4? 200 41ms","method":"GET","requestID":"ef82b0a3b9f64a449c7589976f5aef4a","responseTime":41,"status":200,"url":"/devices/6442773c-b7ff-41d3-82a2-5a0e7af587b4?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MX0.ZxSd6-OriDcEWWzr7it_rknenNQBBlSJ9mS1u3bg6QM","level":"info","message":"auth send jwt","requestID":"cd9594cf9e66238b518da7464fdf7d76"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"cd9594cf9e66238b518da7464fdf7d76","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"cd9594cf9e66238b518da7464fdf7d76"} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Received request.","req_id":152,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:41Z"} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Sent response.","req_id":152,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.170651,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"cd9594cf9e66238b518da7464fdf7d76","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377861,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MX0.ZxSd6-OriDcEWWzr7it_rknenNQBBlSJ9mS1u3bg6QM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cd9594cf9e66238b518da7464fdf7d76","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29e562e0-a9ef-47dc-be63-689ec3b4d78d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"48f5b25b-b9f5-4555-9343-2afd75299016","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377861.0643885} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"cd9594cf9e66238b518da7464fdf7d76","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"222ed1b8-afb5-4744-98ed-c32f027d9df4","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377861.0718892} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"cd9594cf9e66238b518da7464fdf7d76","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29e562e0-a9ef-47dc-be63-689ec3b4d78d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"5503e705-36ec-48d0-b8df-753a329c4703","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377861.0859573} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f72edf89-7174-4f53-8987-d2c0499795be","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377861.086463} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"cd9594cf9e66238b518da7464fdf7d76","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29e562e0-a9ef-47dc-be63-689ec3b4d78d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29e562e0-a9ef-47dc-be63-689ec3b4d78d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:41.085916098Z"}]},"request_id":"a6e054df-f062-4580-ba99-81174fc69604","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377861.0934854} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"cd9594cf9e66238b518da7464fdf7d76","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"cd9594cf9e66238b518da7464fdf7d76"} gateway-1 | {"time_local":"03/Sep/2024:15:37:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"284","request_time":"0.063","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cd9594cf9e66238b518da7464fdf7d76"} device-1 | {"level":"info","message":"POST /devices? 201 56ms","method":"POST","requestID":"cd9594cf9e66238b518da7464fdf7d76","responseTime":56,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MX0.ZxSd6-OriDcEWWzr7it_rknenNQBBlSJ9mS1u3bg6QM","level":"info","message":"auth send jwt","requestID":"a250856a1026eeccdf23381681fb05cc"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a250856a1026eeccdf23381681fb05cc","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a250856a1026eeccdf23381681fb05cc"} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Received request.","req_id":153,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:41Z"} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Sent response.","req_id":153,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.143009,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a250856a1026eeccdf23381681fb05cc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377861,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MX0.ZxSd6-OriDcEWWzr7it_rknenNQBBlSJ9mS1u3bg6QM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a250856a1026eeccdf23381681fb05cc","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d9dcd48-d964-41ed-98a6-d579f11f788c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"303c46b8-e11c-4c62-ad40-29ea9e3b2e5a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377861.1298466} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a250856a1026eeccdf23381681fb05cc","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5660c5cb-2ff6-4e3e-8c10-c4c5fa6aa130","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377861.1376138} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"a250856a1026eeccdf23381681fb05cc","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d9dcd48-d964-41ed-98a6-d579f11f788c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"91061a95-c11a-4225-a237-e8d91fdd9f3c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377861.149703} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b3f9c35f-d2da-46d1-b2be-4b2f9e91e527","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377861.1500695} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"a250856a1026eeccdf23381681fb05cc","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d9dcd48-d964-41ed-98a6-d579f11f788c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d9dcd48-d964-41ed-98a6-d579f11f788c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:41.149675923Z"}]},"request_id":"c23f48d2-14e8-4e3f-a943-052ad0e1e20b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377861.1580408} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a250856a1026eeccdf23381681fb05cc","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a250856a1026eeccdf23381681fb05cc"} gateway-1 | {"time_local":"03/Sep/2024:15:37:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"545","request_time":"0.062","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a250856a1026eeccdf23381681fb05cc"} device-1 | {"level":"info","message":"POST /devices? 201 55ms","method":"POST","requestID":"a250856a1026eeccdf23381681fb05cc","responseTime":55,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MX0.ZxSd6-OriDcEWWzr7it_rknenNQBBlSJ9mS1u3bg6QM","level":"info","message":"auth send jwt","requestID":"23eeb8fc5ed101ce724af5e1c57572f3"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"23eeb8fc5ed101ce724af5e1c57572f3","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"23eeb8fc5ed101ce724af5e1c57572f3"} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Received request.","req_id":154,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:41Z"} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Sent response.","req_id":154,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.294955,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"23eeb8fc5ed101ce724af5e1c57572f3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377861,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2MX0.ZxSd6-OriDcEWWzr7it_rknenNQBBlSJ9mS1u3bg6QM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"23eeb8fc5ed101ce724af5e1c57572f3","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"085ee0a4-a8bc-4b34-8e80-9b920cd31002","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377861.1995835} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"23eeb8fc5ed101ce724af5e1c57572f3","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7362fbd4-2615-4a50-9e0e-ac38359932d4","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377861.2091148} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"23eeb8fc5ed101ce724af5e1c57572f3","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"1dce64cd-d7c7-4f98-ae1f-a4e59d240dea","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377861.2211487} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e18761fa-60c9-49ff-892f-a6e8509f6d0b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377861.2213845} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"23eeb8fc5ed101ce724af5e1c57572f3","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:41.221106553Z"}]},"request_id":"761e0755-7a26-4693-bfe0-c6d41e310519","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377861.2287812} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"23eeb8fc5ed101ce724af5e1c57572f3","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"23eeb8fc5ed101ce724af5e1c57572f3"} gateway-1 | {"time_local":"03/Sep/2024:15:37: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.069","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"23eeb8fc5ed101ce724af5e1c57572f3"} device-1 | {"level":"info","message":"POST /devices? 201 62ms","method":"POST","requestID":"23eeb8fc5ed101ce724af5e1c57572f3","responseTime":62,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6c40026cd30a0689b64fcf4b2e266e8e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6c40026cd30a0689b64fcf4b2e266e8e","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"03/Sep/2024:15:37:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78/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":"6c40026cd30a0689b64fcf4b2e266e8e"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3f60dbe2bd5116c3f7fe941a5e6fea95","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} device-1 | {"level":"info","message":"OPTIONS /devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78/websocket 200 2ms","method":"OPTIONS","requestID":"6c40026cd30a0689b64fcf4b2e266e8e","responseTime":2,"status":200,"url":"/devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78/websocket"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"3f60dbe2bd5116c3f7fe941a5e6fea95","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"03/Sep/2024:15:37:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d/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":"3f60dbe2bd5116c3f7fe941a5e6fea95"} device-1 | {"level":"info","message":"OPTIONS /devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d/websocket 200 2ms","method":"OPTIONS","requestID":"3f60dbe2bd5116c3f7fe941a5e6fea95","responseTime":2,"status":200,"url":"/devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2M30.fE_uBhhko-UaDJuhDS6y5IyksB9EV2_AuV-9okt9uIU","level":"info","message":"auth send jwt","requestID":"40f1e461d0c07aed8fe4a4f064763eca"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"40f1e461d0c07aed8fe4a4f064763eca","responseTime":6,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2M30.fE_uBhhko-UaDJuhDS6y5IyksB9EV2_AuV-9okt9uIU","level":"info","message":"auth send jwt","requestID":"fbb419b39b122d53e45deaf2758d4de4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"40f1e461d0c07aed8fe4a4f064763eca"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"fbb419b39b122d53e45deaf2758d4de4","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"fbb419b39b122d53e45deaf2758d4de4"} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Received request.","req_id":155,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Sent response.","req_id":155,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.660208,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"40f1e461d0c07aed8fe4a4f064763eca","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377863,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2M30.fE_uBhhko-UaDJuhDS6y5IyksB9EV2_AuV-9okt9uIU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"40f1e461d0c07aed8fe4a4f064763eca","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Received request.","req_id":156,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Sent response.","req_id":156,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.613642,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"fbb419b39b122d53e45deaf2758d4de4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377863,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2M30.fE_uBhhko-UaDJuhDS6y5IyksB9EV2_AuV-9okt9uIU"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"fbb419b39b122d53e45deaf2758d4de4","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"fbb419b39b122d53e45deaf2758d4de4"} gateway-1 | {"time_local":"03/Sep/2024:15:37:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.040","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"fbb419b39b122d53e45deaf2758d4de4"} device-1 | {"level":"info","message":"POST /devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d/websocket 200 30ms","method":"POST","requestID":"fbb419b39b122d53e45deaf2758d4de4","responseTime":30,"status":200,"url":"/devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"40f1e461d0c07aed8fe4a4f064763eca"} gateway-1 | {"time_local":"03/Sep/2024:15:37:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.044","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"40f1e461d0c07aed8fe4a4f064763eca"} device-1 | {"level":"info","message":"POST /devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78/websocket 200 36ms","method":"POST","requestID":"40f1e461d0c07aed8fe4a4f064763eca","responseTime":36,"status":200,"url":"/devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2M30.fE_uBhhko-UaDJuhDS6y5IyksB9EV2_AuV-9okt9uIU","level":"info","message":"auth send jwt","requestID":"2b65763ec5f400a721463c246b862c13"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2b65763ec5f400a721463c246b862c13","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2b65763ec5f400a721463c246b862c13"} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Received request.","req_id":157,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Sent response.","req_id":157,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.34042,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"2b65763ec5f400a721463c246b862c13","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377863,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2M30.fE_uBhhko-UaDJuhDS6y5IyksB9EV2_AuV-9okt9uIU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2b65763ec5f400a721463c246b862c13","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:41.221106553Z"}]},"request_id":"e4f088ab-bad5-4ca6-8868-6444b5e6ee9d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377863.2985094} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2b65763ec5f400a721463c246b862c13","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2b65763ec5f400a721463c246b862c13"} device-1 | {"level":"info","message":"GET /devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78? 200 21ms","method":"GET","requestID":"2b65763ec5f400a721463c246b862c13","responseTime":21,"status":200,"url":"/devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78?"} gateway-1 | {"time_local":"03/Sep/2024:15:37:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78? 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":"2b65763ec5f400a721463c246b862c13"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2M30.fE_uBhhko-UaDJuhDS6y5IyksB9EV2_AuV-9okt9uIU","level":"info","message":"auth send jwt","requestID":"011e4e50f0e8c6e17db90ea55c184280"} authentication-1 | {"level":"info","message":"GET /auth 200 17ms","method":"GET","requestID":"011e4e50f0e8c6e17db90ea55c184280","responseTime":17,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"011e4e50f0e8c6e17db90ea55c184280"} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Received request.","req_id":158,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Sent response.","req_id":158,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.861836,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"011e4e50f0e8c6e17db90ea55c184280","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377863,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2M30.fE_uBhhko-UaDJuhDS6y5IyksB9EV2_AuV-9okt9uIU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"011e4e50f0e8c6e17db90ea55c184280","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/493a14f0-aa75-465e-99fb-adcbb5fc3a93"},"level":"info","message":"Attempting to run experiment","requestID":"011e4e50f0e8c6e17db90ea55c184280"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/493a14f0-aa75-465e-99fb-adcbb5fc3a93"},"level":"info","message":"Attempting to book experiment","requestID":"011e4e50f0e8c6e17db90ea55c184280"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/493a14f0-aa75-465e-99fb-adcbb5fc3a93"},"level":"info","message":"Successfully booked experiment","requestID":"011e4e50f0e8c6e17db90ea55c184280"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7603ea40-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"76041150-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Received request.","req_id":159,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Sent response.","req_id":159,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.605295,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":160,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d9dcd48-d964-41ed-98a6-d579f11f788c","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7603ea40-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/7d9dcd48-d964-41ed-98a6-d579f11f788c","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377863,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2M30.fE_uBhhko-UaDJuhDS6y5IyksB9EV2_AuV-9okt9uIU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7603ea40-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":160,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.610629,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"76041150-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377863,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2M30.fE_uBhhko-UaDJuhDS6y5IyksB9EV2_AuV-9okt9uIU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"76041150-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d9dcd48-d964-41ed-98a6-d579f11f788c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d9dcd48-d964-41ed-98a6-d579f11f788c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:41.149675923Z"}]},"request_id":"f9803d97-7fbe-4724-b851-603967968e59","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377863.404196} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7603ea40-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:41.221106553Z"}]},"request_id":"f8365bf5-532d-4b28-aa79-524982ae326d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377863.405511} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"76041150-6a0a-11ef-9b41-2363e6623fc8","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"76041150-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78? 200 14ms","method":"GET","requestID":"76041150-6a0a-11ef-9b41-2363e6623fc8","responseTime":14,"status":200,"url":"/devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78?"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":161,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":161,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.753295,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7603ea40-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377863,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2M30.fE_uBhhko-UaDJuhDS6y5IyksB9EV2_AuV-9okt9uIU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7603ea40-6a0a-11ef-9b41-2363e6623fc8","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7603ea40-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/7d9dcd48-d964-41ed-98a6-d579f11f788c? 200 19ms","method":"GET","requestID":"7603ea40-6a0a-11ef-9b41-2363e6623fc8","responseTime":19,"status":200,"url":"/devices/7d9dcd48-d964-41ed-98a6-d579f11f788c?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/493a14f0-aa75-465e-99fb-adcbb5fc3a93"},"level":"info","message":"Setting up experiment","requestID":"011e4e50f0e8c6e17db90ea55c184280"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/493a14f0-aa75-465e-99fb-adcbb5fc3a93"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"011e4e50f0e8c6e17db90ea55c184280"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/493a14f0-aa75-465e-99fb-adcbb5fc3a93"},"level":"info","message":"Successfully locked booking for experiment","requestID":"011e4e50f0e8c6e17db90ea55c184280"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/493a14f0-aa75-465e-99fb-adcbb5fc3a93"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"011e4e50f0e8c6e17db90ea55c184280"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/493a14f0-aa75-465e-99fb-adcbb5fc3a93"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"011e4e50f0e8c6e17db90ea55c184280"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/493a14f0-aa75-465e-99fb-adcbb5fc3a93"},"level":"info","message":"Attempting to update booking for experiment","requestID":"011e4e50f0e8c6e17db90ea55c184280"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/493a14f0-aa75-465e-99fb-adcbb5fc3a93"},"level":"info","message":"Successfully updated booking for experiment","requestID":"011e4e50f0e8c6e17db90ea55c184280"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/493a14f0-aa75-465e-99fb-adcbb5fc3a93"},"level":"info","message":"Successfully set up experiment","requestID":"011e4e50f0e8c6e17db90ea55c184280"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"760dae40-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"760dfc60-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"760e4a80-6a0a-11ef-9b41-2363e6623fc8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/493a14f0-aa75-465e-99fb-adcbb5fc3a93"},"level":"info","message":"Successfully running experiment","requestID":"011e4e50f0e8c6e17db90ea55c184280"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":162,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":162,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.168621,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Received request.","req_id":163,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"760dae40-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377863,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2M30.fE_uBhhko-UaDJuhDS6y5IyksB9EV2_AuV-9okt9uIU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"760dae40-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Sent response.","req_id":163,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.683873,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":164,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"760dfc60-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377863,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2M30.fE_uBhhko-UaDJuhDS6y5IyksB9EV2_AuV-9okt9uIU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"760dfc60-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29e562e0-a9ef-47dc-be63-689ec3b4d78d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f62c58a0-2e64-406a-918a-23ef302a756f","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377863.4713728} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29e562e0-a9ef-47dc-be63-689ec3b4d78d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29e562e0-a9ef-47dc-be63-689ec3b4d78d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:41.085916098Z"}]},"request_id":"73d43f2b-d333-4377-af77-e048857e72b4","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377863.473139} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":164,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.412288,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"760e4a80-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d","object_type":"device","rebac_allow":false,"scope_allow":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":"760e4a80-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:41.221106553Z"}]},"request_id":"c55d7b8a-bc5b-4428-b431-93b91ae6867d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377863.4739628} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"760dae40-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"760dfc60-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"760dae40-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d? 200 23ms","method":"GET","requestID":"760dae40-6a0a-11ef-9b41-2363e6623fc8","responseTime":23,"status":200,"url":"/devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"760e4a80-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d/signaling 200 20ms","method":"POST","requestID":"760e4a80-6a0a-11ef-9b41-2363e6623fc8","responseTime":20,"status":200,"url":"/devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"760dfc60-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78? 200 23ms","method":"GET","requestID":"760dfc60-6a0a-11ef-9b41-2363e6623fc8","responseTime":23,"status":200,"url":"/devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7611ccf0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"76121b10-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F493a14f0-aa75-465e-99fb-adcbb5fc3a93#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F493a14f0-aa75-465e-99fb-adcbb5fc3a93","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"e2d63d98-8741-400c-974c-4efa2f09ac3e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377863.4884028} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b2fe20e1-dfe1-4769-a6f5-74430bfad0ca","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377863.4892576} authorization-1 | {"level":"info","message":"POST /relations/update 200 29ms","method":"POST","requestID":"011e4e50f0e8c6e17db90ea55c184280","responseTime":29,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1a926998-96f2-4f61-9141-63720055ab73","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377863.4961574} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":165,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":165,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.975931,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Received request.","req_id":166,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7611ccf0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","object_type":"device","rebac_allow":false,"scope_allow":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":"7611ccf0-6a0a-11ef-9b41-2363e6623fc8","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29e562e0-a9ef-47dc-be63-689ec3b4d78d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"60474a2a-2089-44f1-b85b-3189d819911c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377863.5036697} experiment-1 | {"data":{"experiment":"http://localhost/experiments/493a14f0-aa75-465e-99fb-adcbb5fc3a93","user":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"011e4e50f0e8c6e17db90ea55c184280"} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Sent response.","req_id":166,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.517762,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"76121b10-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"76121b10-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"03/Sep/2024:15:37:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"807","request_time":"0.194","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"011e4e50f0e8c6e17db90ea55c184280"} experiment-1 | {"level":"info","message":"POST /experiments? 201 174ms","method":"POST","requestID":"011e4e50f0e8c6e17db90ea55c184280","responseTime":174,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7611ccf0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78/signaling 200 23ms","method":"POST","requestID":"7611ccf0-6a0a-11ef-9b41-2363e6623fc8","responseTime":23,"status":200,"url":"/devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"76121b10-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d/signaling 200 22ms","method":"POST","requestID":"76121b10-6a0a-11ef-9b41-2363e6623fc8","responseTime":22,"status":200,"url":"/devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2M30.fE_uBhhko-UaDJuhDS6y5IyksB9EV2_AuV-9okt9uIU","level":"info","message":"auth send jwt","requestID":"9d3c9ef3d9ecd6bb727ea2778fa6a19a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9d3c9ef3d9ecd6bb727ea2778fa6a19a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7615eba0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9d3c9ef3d9ecd6bb727ea2778fa6a19a"} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Received request.","req_id":167,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":168,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"573ebebe-ea30-4ff5-bc7d-d5661c4c4a5d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377863.519404} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Sent response.","req_id":167,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.534927,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":168,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.843909,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7615eba0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7615eba0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9d3c9ef3d9ecd6bb727ea2778fa6a19a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377863,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2M30.fE_uBhhko-UaDJuhDS6y5IyksB9EV2_AuV-9okt9uIU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9d3c9ef3d9ecd6bb727ea2778fa6a19a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7615eba0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78/signaling 200 11ms","method":"POST","requestID":"7615eba0-6a0a-11ef-9b41-2363e6623fc8","responseTime":11,"status":200,"url":"/devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/493a14f0-aa75-465e-99fb-adcbb5fc3a93"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"011e4e50f0e8c6e17db90ea55c184280"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/493a14f0-aa75-465e-99fb-adcbb5fc3a93"},"level":"info","message":"Building connection plan","requestID":"011e4e50f0e8c6e17db90ea55c184280"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29e562e0-a9ef-47dc-be63-689ec3b4d78d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29e562e0-a9ef-47dc-be63-689ec3b4d78d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:41.085916098Z"}]},"request_id":"32dce9ba-719c-4eab-979f-f3e4ab973755","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377863.5261734} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"c4be5be0-ca1a-494d-a6f6-305c8d73bcee"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"517d1fa3-5435-420b-815d-d0cf2e1097ec"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"9902fa45-5de0-4d71-9de1-fde6282a91a4"}]},"level":"info","message":"Built pairwise service configurations","requestID":"011e4e50f0e8c6e17db90ea55c184280"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"011e4e50f0e8c6e17db90ea55c184280"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9d3c9ef3d9ecd6bb727ea2778fa6a19a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"76183590-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9d3c9ef3d9ecd6bb727ea2778fa6a19a"} gateway-1 | {"time_local":"03/Sep/2024:15:37:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d? HTTP/1.1","status": "200","body_bytes_sent":"283","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9d3c9ef3d9ecd6bb727ea2778fa6a19a"} device-1 | {"level":"info","message":"GET /devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d? 200 15ms","method":"GET","requestID":"9d3c9ef3d9ecd6bb727ea2778fa6a19a","responseTime":15,"status":200,"url":"/devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d?"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":169,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":169,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.883886,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"76183590-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377863,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2M30.fE_uBhhko-UaDJuhDS6y5IyksB9EV2_AuV-9okt9uIU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"76183590-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2M30.fE_uBhhko-UaDJuhDS6y5IyksB9EV2_AuV-9okt9uIU","level":"info","message":"auth send jwt","requestID":"799e75aa1e9be8016aff89484b802f4a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"799e75aa1e9be8016aff89484b802f4a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"799e75aa1e9be8016aff89484b802f4a"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":170,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":170,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.640997,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"799e75aa1e9be8016aff89484b802f4a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377863,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2M30.fE_uBhhko-UaDJuhDS6y5IyksB9EV2_AuV-9okt9uIU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"799e75aa1e9be8016aff89484b802f4a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","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%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"1c16bbab-9f25-4d8b-a95b-38734e2022e1","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377863.5449846} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"56737139-1eb0-4128-aa54-82331fe00ef9","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377863.5451307} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"76183590-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:41.221106553Z"}]},"request_id":"fc4a2b54-563f-4660-9c5d-09275c66d9c3","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377863.5460327} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"799e75aa1e9be8016aff89484b802f4a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"799e75aa1e9be8016aff89484b802f4a"} gateway-1 | {"time_local":"03/Sep/2024:15:37:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78? 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":"799e75aa1e9be8016aff89484b802f4a"} device-1 | {"level":"info","message":"GET /devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78? 200 14ms","method":"GET","requestID":"799e75aa1e9be8016aff89484b802f4a","responseTime":14,"status":200,"url":"/devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"76183590-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"76183590-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/8c5c3537-1ffc-4020-b696-bb467c3df7d1'","requestID":"76183590-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/8c5c3537-1ffc-4020-b696-bb467c3df7d1'","requestID":"76183590-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"76183590-6a0a-11ef-9b41-2363e6623fc8"} 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":"76183590-6a0a-11ef-9b41-2363e6623fc8","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":"76183590-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/8c5c3537-1ffc-4020-b696-bb467c3df7d1","device":"ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","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/8c5c3537-1ffc-4020-b696-bb467c3df7d1","device":"29e562e0-a9ef-47dc-be63-689ec3b4d78d","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":true} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/493a14f0-aa75-465e-99fb-adcbb5fc3a93"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"011e4e50f0e8c6e17db90ea55c184280"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"76215d50-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":171,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29e562e0-a9ef-47dc-be63-689ec3b4d78d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f8facabb-8e18-4992-903e-48353dfbd94d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377863.5929503} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":171,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.147068,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"76215d50-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"76215d50-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"76215d50-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d/signaling 200 8ms","method":"POST","requestID":"76215d50-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7622e3f0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":172,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:43Z"} device-1 | {"device":"ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ac949c89-2cea-4544-be2f-1ba30fda61e4","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377863.6071198} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":172,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.65039,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:43Z"} device-1 | {"device":"29e562e0-a9ef-47dc-be63-689ec3b4d78d","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"29e562e0-a9ef-47dc-be63-689ec3b4d78d","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7622e3f0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"7622e3f0-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7622e3f0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78/signaling 200 15ms","method":"POST","requestID":"7622e3f0-6a0a-11ef-9b41-2363e6623fc8","responseTime":15,"status":200,"url":"/devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 2770693692692695486 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:ZmM5\r\na=ice-pwd:Zodz223rtKhNbisFUkWKjUP9\r\na=ice-options:trickle\r\na=fingerprint:sha-256 81:3D:6E:5F:4D:62:F7:3C:B5:29:3E:33:90:47:E5:95:2B:68:39:FF:A9:37:57:45:AF:A7:87:5E:5A:48:31:AD\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"29e562e0-a9ef-47dc-be63-689ec3b4d78d","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 3476267623575397493 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:8fXs\r\na=ice-pwd:tageWHJyrT9T8Uwkg8umaOwd\r\na=ice-options:trickle\r\na=fingerprint:sha-256 AE:EE:0C:79:2D:E9:00:5B:8A:30:9D:5B:34:BB:9A:03:51:AA:9F:3B:C5:86:C6:3C:34:1A:97:6B:63:FD:94:14\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:1030976926 1 udp 2113937151 41746c5e-e8fb-4005-91bd-4d95df55070c.local 41890 typ host generation 0 ufrag 8fXs network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3109953505 1 udp 1677729535 141.24.211.56 41890 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 8fXs network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","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/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78'"} device-1 | {"content":{"candidate":"candidate:3393045042 1 udp 2113937151 90e79086-ee60-4737-9b7f-bd6f13b29994.local 53258 typ host generation 0 ufrag ZmM5 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"29e562e0-a9ef-47dc-be63-689ec3b4d78d","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1309714509 1 udp 1677729535 141.24.211.56 53258 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag ZmM5 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"29e562e0-a9ef-47dc-be63-689ec3b4d78d","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/29e562e0-a9ef-47dc-be63-689ec3b4d78d'"} device-1 | {"device":"29e562e0-a9ef-47dc-be63-689ec3b4d78d","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","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/8c5c3537-1ffc-4020-b696-bb467c3df7d1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"8c5c3537-1ffc-4020-b696-bb467c3df7d1","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"29e562e0-a9ef-47dc-be63-689ec3b4d78d","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d43f2bd45489a21c61c937ae70200abc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d43f2bd45489a21c61c937ae70200abc","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/8c5c3537-1ffc-4020-b696-bb467c3df7d1"}}},"level":"info","message":"received a callback","requestID":"d43f2bd45489a21c61c937ae70200abc"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"d43f2bd45489a21c61c937ae70200abc","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:37:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"d43f2bd45489a21c61c937ae70200abc"} device-1 | {"device":"29e562e0-a9ef-47dc-be63-689ec3b4d78d","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"8c5c3537-1ffc-4020-b696-bb467c3df7d1","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"8c5c3537-1ffc-4020-b696-bb467c3df7d1","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/8c5c3537-1ffc-4020-b696-bb467c3df7d1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"8c5c3537-1ffc-4020-b696-bb467c3df7d1","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"164cb9f3bf0c69ee2038a17ddd410dc6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"164cb9f3bf0c69ee2038a17ddd410dc6","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/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/8c5c3537-1ffc-4020-b696-bb467c3df7d1"}}},"level":"info","message":"received a callback","requestID":"164cb9f3bf0c69ee2038a17ddd410dc6"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"762f6710-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":173,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F8c5c3537-1ffc-4020-b696-bb467c3df7d1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8c688145-4c8d-4bd2-be33-06ff7d240bde","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377863.6866183} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":173,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.868018,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/8c5c3537-1ffc-4020-b696-bb467c3df7d1","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"762f6710-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/8c5c3537-1ffc-4020-b696-bb467c3df7d1","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":"762f6710-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"762f6710-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /peerconnections/8c5c3537-1ffc-4020-b696-bb467c3df7d1 200 9ms","method":"GET","requestID":"762f6710-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/peerconnections/8c5c3537-1ffc-4020-b696-bb467c3df7d1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 35ms","method":"POST","requestID":"164cb9f3bf0c69ee2038a17ddd410dc6","responseTime":35,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:37:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.037","http_referrer":"","http_user_agent":"node-fetch","requestID":"164cb9f3bf0c69ee2038a17ddd410dc6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"76342200-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":174,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a827f9c2-c362-479e-aab1-0e80414ba5ec","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377863.716229} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":174,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.297085,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"76342200-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"76342200-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"76342200-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78/signaling 200 8ms","method":"POST","requestID":"76342200-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7635a8a0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":175,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29e562e0-a9ef-47dc-be63-689ec3b4d78d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b6413aae-9bac-4d3c-bc90-4178161fa658","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377863.7265623} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":175,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.642349,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7635a8a0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7635a8a0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7635a8a0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d/signaling 200 8ms","method":"POST","requestID":"7635a8a0-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2M30.fE_uBhhko-UaDJuhDS6y5IyksB9EV2_AuV-9okt9uIU","level":"info","message":"auth send jwt","requestID":"8a9da90a8a1ef2638efee5f26c82aa7a"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"8a9da90a8a1ef2638efee5f26c82aa7a","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/493a14f0-aa75-465e-99fb-adcbb5fc3a93","requestID":"8a9da90a8a1ef2638efee5f26c82aa7a"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":176,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":176,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.94591,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/493a14f0-aa75-465e-99fb-adcbb5fc3a93","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8a9da90a8a1ef2638efee5f26c82aa7a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/493a14f0-aa75-465e-99fb-adcbb5fc3a93","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377863,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2M30.fE_uBhhko-UaDJuhDS6y5IyksB9EV2_AuV-9okt9uIU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8a9da90a8a1ef2638efee5f26c82aa7a","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/493a14f0-aa75-465e-99fb-adcbb5fc3a93","requestID":"8a9da90a8a1ef2638efee5f26c82aa7a"} gateway-1 | {"time_local":"03/Sep/2024:15:37:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/493a14f0-aa75-465e-99fb-adcbb5fc3a93 HTTP/1.1","status": "200","body_bytes_sent":"880","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8a9da90a8a1ef2638efee5f26c82aa7a"} experiment-1 | {"level":"info","message":"GET /experiments/493a14f0-aa75-465e-99fb-adcbb5fc3a93 200 11ms","method":"GET","requestID":"8a9da90a8a1ef2638efee5f26c82aa7a","responseTime":11,"status":200,"url":"/experiments/493a14f0-aa75-465e-99fb-adcbb5fc3a93"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2M30.fE_uBhhko-UaDJuhDS6y5IyksB9EV2_AuV-9okt9uIU","level":"info","message":"auth send jwt","requestID":"876e96f267e21909b72fa36d52a872cc"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"876e96f267e21909b72fa36d52a872cc","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/493a14f0-aa75-465e-99fb-adcbb5fc3a93","requestID":"876e96f267e21909b72fa36d52a872cc"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":177,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":177,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.756259,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/493a14f0-aa75-465e-99fb-adcbb5fc3a93","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"876e96f267e21909b72fa36d52a872cc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/493a14f0-aa75-465e-99fb-adcbb5fc3a93","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377863,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2M30.fE_uBhhko-UaDJuhDS6y5IyksB9EV2_AuV-9okt9uIU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"876e96f267e21909b72fa36d52a872cc","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/493a14f0-aa75-465e-99fb-adcbb5fc3a93"},"level":"info","message":"Attempting to finish experiment","requestID":"876e96f267e21909b72fa36d52a872cc"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"763ef770-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":178,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":178,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.687186,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/8c5c3537-1ffc-4020-b696-bb467c3df7d1","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"763ef770-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:http://localhost/peerconnections/8c5c3537-1ffc-4020-b696-bb467c3df7d1","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377863,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2M30.fE_uBhhko-UaDJuhDS6y5IyksB9EV2_AuV-9okt9uIU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"763ef770-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/8c5c3537-1ffc-4020-b696-bb467c3df7d1","device":"ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/8c5c3537-1ffc-4020-b696-bb467c3df7d1","device":"29e562e0-a9ef-47dc-be63-689ec3b4d78d","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/8c5c3537-1ffc-4020-b696-bb467c3df7d1' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/8c5c3537-1ffc-4020-b696-bb467c3df7d1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"8c5c3537-1ffc-4020-b696-bb467c3df7d1","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bb7f186cebbeb1b52ec70c169e53755e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"bb7f186cebbeb1b52ec70c169e53755e","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3395f88f099c2db7ea01a60dc2b6a320","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F8c5c3537-1ffc-4020-b696-bb467c3df7d1': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F8c5c3537-1ffc-4020-b696-bb467c3df7d1","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"a15df1d3-6a16-4c52-ab73-5664acec229b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377863.8031833} 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/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/8c5c3537-1ffc-4020-b696-bb467c3df7d1"}}},"level":"info","message":"received a callback","requestID":"bb7f186cebbeb1b52ec70c169e53755e"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dd58b24d-bfe2-4a70-aa72-f5ddf52ad70a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377863.8035216} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3395f88f099c2db7ea01a60dc2b6a320","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/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/8c5c3537-1ffc-4020-b696-bb467c3df7d1"}}},"level":"info","message":"received a callback","requestID":"3395f88f099c2db7ea01a60dc2b6a320"} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"763ef770-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"8c5c3537-1ffc-4020-b696-bb467c3df7d1","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"763ef770-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"DELETE /peerconnections/8c5c3537-1ffc-4020-b696-bb467c3df7d1 204 38ms","method":"DELETE","requestID":"763ef770-6a0a-11ef-9b41-2363e6623fc8","responseTime":38,"status":204,"url":"/peerconnections/8c5c3537-1ffc-4020-b696-bb467c3df7d1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/493a14f0-aa75-465e-99fb-adcbb5fc3a93"},"level":"info","message":"Successfully finished experiment","requestID":"876e96f267e21909b72fa36d52a872cc"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"76484640-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":179,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2fde03ef-50d5-45e5-902b-fd71dc2f263c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377863.8487995} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":179,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.254665,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"76484640-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"76484640-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"76484640-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78/signaling 200 10ms","method":"POST","requestID":"76484640-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"764a4210-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F493a14f0-aa75-465e-99fb-adcbb5fc3a93': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F493a14f0-aa75-465e-99fb-adcbb5fc3a93","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"23acb4e1-205d-4c6c-8fdc-f3efd360b55f","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377863.8579981} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b7a9ba09-07a4-4ba4-8ac4-41b8f21b0bbe","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377863.8582137} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"876e96f267e21909b72fa36d52a872cc","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":180,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29e562e0-a9ef-47dc-be63-689ec3b4d78d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bef4b11d-f6f5-43fa-a0f4-46990a4bde9a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377863.863248} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":180,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.796984,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"764a4210-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"764a4210-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"764a4210-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d/signaling 200 12ms","method":"POST","requestID":"764a4210-6a0a-11ef-9b41-2363e6623fc8","responseTime":12,"status":200,"url":"/devices/29e562e0-a9ef-47dc-be63-689ec3b4d78d/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/493a14f0-aa75-465e-99fb-adcbb5fc3a93","requestID":"876e96f267e21909b72fa36d52a872cc"} gateway-1 | {"time_local":"03/Sep/2024:15:37:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/493a14f0-aa75-465e-99fb-adcbb5fc3a93 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.159","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"876e96f267e21909b72fa36d52a872cc"} experiment-1 | {"level":"info","message":"DELETE /experiments/493a14f0-aa75-465e-99fb-adcbb5fc3a93 204 159ms","method":"DELETE","requestID":"876e96f267e21909b72fa36d52a872cc","responseTime":159,"status":204,"url":"/experiments/493a14f0-aa75-465e-99fb-adcbb5fc3a93"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 130ms","method":"POST","requestID":"bb7f186cebbeb1b52ec70c169e53755e","responseTime":130,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:37:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.133","http_referrer":"","http_user_agent":"node-fetch","requestID":"bb7f186cebbeb1b52ec70c169e53755e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 129ms","method":"POST","requestID":"3395f88f099c2db7ea01a60dc2b6a320","responseTime":129,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2M30.fE_uBhhko-UaDJuhDS6y5IyksB9EV2_AuV-9okt9uIU","level":"info","message":"auth send jwt","requestID":"f64b2fb558aef7a393f20611c7ef7eb6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f64b2fb558aef7a393f20611c7ef7eb6","responseTime":4,"status":200,"url":"/auth"} gateway-1 | {"time_local":"03/Sep/2024:15:37:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.135","http_referrer":"","http_user_agent":"node-fetch","requestID":"3395f88f099c2db7ea01a60dc2b6a320"} device-1 | {"level":"info","message":"postDevices called","requestID":"f64b2fb558aef7a393f20611c7ef7eb6"} gateway-1 | {"time_local":"03/Sep/2024:15:37:43 +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.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":"9c9a774b6478d305ffee1dfcf10904d7"} gateway-1 | {"time_local":"03/Sep/2024:15:37:43 +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.678","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"88a7ccc50d95be6ffe77d13babfdcd31"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":181,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":181,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.307575,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"f64b2fb558aef7a393f20611c7ef7eb6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377863,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2M30.fE_uBhhko-UaDJuhDS6y5IyksB9EV2_AuV-9okt9uIU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f64b2fb558aef7a393f20611c7ef7eb6","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/29e562e0-a9ef-47dc-be63-689ec3b4d78d' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/ee27e4d5-87a2-4aa8-8f03-0b55c7ddbf78' 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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a4c4d94-39ce-4252-b5e8-08cc4731593d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"12826216-10c0-4cba-a42a-6d4cd945f8c4","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377863.9586887} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f64b2fb558aef7a393f20611c7ef7eb6","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1928b8d3-e52c-427d-b47f-c9d5928f2bc0","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377863.9646606} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f64b2fb558aef7a393f20611c7ef7eb6","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a4c4d94-39ce-4252-b5e8-08cc4731593d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"91300d70-6128-4d50-9af3-418080927b1d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377863.9759367} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"642ca5b6-bc02-4250-87ab-5ef03530dbab","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377863.976202} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"f64b2fb558aef7a393f20611c7ef7eb6","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a4c4d94-39ce-4252-b5e8-08cc4731593d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a4c4d94-39ce-4252-b5e8-08cc4731593d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:43.975915715Z"}]},"request_id":"c2d4c6f4-4333-4d01-b3ab-f61967bc47b7","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377863.9814188} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f64b2fb558aef7a393f20611c7ef7eb6","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f64b2fb558aef7a393f20611c7ef7eb6"} gateway-1 | {"time_local":"03/Sep/2024:15:37:43 +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":"f64b2fb558aef7a393f20611c7ef7eb6"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"f64b2fb558aef7a393f20611c7ef7eb6","responseTime":48,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2M30.fE_uBhhko-UaDJuhDS6y5IyksB9EV2_AuV-9okt9uIU","level":"info","message":"auth send jwt","requestID":"ff818a5b5eebdaf49d372d3e312391f5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ff818a5b5eebdaf49d372d3e312391f5","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ff818a5b5eebdaf49d372d3e312391f5"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":182,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":182,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.928067,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:43Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"ff818a5b5eebdaf49d372d3e312391f5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377863,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2M30.fE_uBhhko-UaDJuhDS6y5IyksB9EV2_AuV-9okt9uIU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ff818a5b5eebdaf49d372d3e312391f5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b3bf8d6-0813-4da6-bae4-d890f705c183","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d9d7eb24-8694-4ab8-801f-c6dae7080380","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377864.0101266} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ff818a5b5eebdaf49d372d3e312391f5","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"857df7b9-3aa1-44f7-9c0b-9fdee5f24f76","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377864.015907} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"ff818a5b5eebdaf49d372d3e312391f5","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b3bf8d6-0813-4da6-bae4-d890f705c183","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"54c201ee-13c9-427a-9879-53c52467a632","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377864.0258613} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"301405d4-4504-4dff-a5c2-0db0c4704a8c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377864.0258958} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"ff818a5b5eebdaf49d372d3e312391f5","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b3bf8d6-0813-4da6-bae4-d890f705c183","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b3bf8d6-0813-4da6-bae4-d890f705c183","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:44.025845928Z"}]},"request_id":"38f0eb34-5db0-4af8-a044-d57747d16b0c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377864.0299003} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ff818a5b5eebdaf49d372d3e312391f5","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ff818a5b5eebdaf49d372d3e312391f5"} gateway-1 | {"time_local":"03/Sep/2024:15:37:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ff818a5b5eebdaf49d372d3e312391f5"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"ff818a5b5eebdaf49d372d3e312391f5","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2NH0.uTwkViFjuJMNKR3rrtakk_MjVVoxMwCOhlpUMu8hGMk","level":"info","message":"auth send jwt","requestID":"7fd59c3ec4ea2265ee3d598a80b6060b"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"7fd59c3ec4ea2265ee3d598a80b6060b","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"7fd59c3ec4ea2265ee3d598a80b6060b"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":183,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:44Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":183,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.819991,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:44Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7fd59c3ec4ea2265ee3d598a80b6060b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377864,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2NH0.uTwkViFjuJMNKR3rrtakk_MjVVoxMwCOhlpUMu8hGMk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7fd59c3ec4ea2265ee3d598a80b6060b","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a4c4d94-39ce-4252-b5e8-08cc4731593d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a4c4d94-39ce-4252-b5e8-08cc4731593d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:43.975915715Z"}]},"request_id":"feee12c9-1efa-4de6-89e4-3f3d4c6a5d84","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377864.5051527} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7fd59c3ec4ea2265ee3d598a80b6060b","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bd273288-34ac-41cc-b335-4d258ca0240a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377864.5144866} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"7fd59c3ec4ea2265ee3d598a80b6060b","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a4c4d94-39ce-4252-b5e8-08cc4731593d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a4c4d94-39ce-4252-b5e8-08cc4731593d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:43.975915715Z"}]},"request_id":"245319ed-44ad-4e1c-85b5-4338ccd1ec99","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377864.5269902} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7fd59c3ec4ea2265ee3d598a80b6060b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"7fd59c3ec4ea2265ee3d598a80b6060b"} device-1 | {"level":"info","message":"PATCH /devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d 200 40ms","method":"PATCH","requestID":"7fd59c3ec4ea2265ee3d598a80b6060b","responseTime":40,"status":200,"url":"/devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d"} gateway-1 | {"time_local":"03/Sep/2024:15:37:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.047","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"7fd59c3ec4ea2265ee3d598a80b6060b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2NH0.uTwkViFjuJMNKR3rrtakk_MjVVoxMwCOhlpUMu8hGMk","level":"info","message":"auth send jwt","requestID":"1a4d1fa87d19ca8d4bfcea2d34bdf656"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1a4d1fa87d19ca8d4bfcea2d34bdf656","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"1a4d1fa87d19ca8d4bfcea2d34bdf656"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":184,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:44Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":184,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.179246,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:44Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"1a4d1fa87d19ca8d4bfcea2d34bdf656","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377864,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2NH0.uTwkViFjuJMNKR3rrtakk_MjVVoxMwCOhlpUMu8hGMk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1a4d1fa87d19ca8d4bfcea2d34bdf656","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"1a4d1fa87d19ca8d4bfcea2d34bdf656"} gateway-1 | {"time_local":"03/Sep/2024:15:37:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"1a4d1fa87d19ca8d4bfcea2d34bdf656"} device-1 | {"level":"info","message":"POST /devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d/websocket 200 21ms","method":"POST","requestID":"1a4d1fa87d19ca8d4bfcea2d34bdf656","responseTime":21,"status":200,"url":"/devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"94325686c51a2edb1d11a5f35d3e25e2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"94325686c51a2edb1d11a5f35d3e25e2","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"03/Sep/2024:15:37:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6b3bf8d6-0813-4da6-bae4-d890f705c183/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":"94325686c51a2edb1d11a5f35d3e25e2"} device-1 | {"level":"info","message":"OPTIONS /devices/6b3bf8d6-0813-4da6-bae4-d890f705c183/websocket 200 1ms","method":"OPTIONS","requestID":"94325686c51a2edb1d11a5f35d3e25e2","responseTime":1,"status":200,"url":"/devices/6b3bf8d6-0813-4da6-bae4-d890f705c183/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2Nn0.VYEGrwC1QLerbLv_-N8t9mJ0rFla_1GtGjp7sE-QdMo","level":"info","message":"auth send jwt","requestID":"c518c99d31aa06d34272aba758a16531"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c518c99d31aa06d34272aba758a16531","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c518c99d31aa06d34272aba758a16531"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":185,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:46Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":185,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.196192,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b3bf8d6-0813-4da6-bae4-d890f705c183","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"c518c99d31aa06d34272aba758a16531","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/6b3bf8d6-0813-4da6-bae4-d890f705c183","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377866,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2Nn0.VYEGrwC1QLerbLv_-N8t9mJ0rFla_1GtGjp7sE-QdMo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c518c99d31aa06d34272aba758a16531","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c518c99d31aa06d34272aba758a16531"} gateway-1 | {"time_local":"03/Sep/2024:15:37:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/6b3bf8d6-0813-4da6-bae4-d890f705c183/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":"c518c99d31aa06d34272aba758a16531"} device-1 | {"level":"info","message":"POST /devices/6b3bf8d6-0813-4da6-bae4-d890f705c183/websocket 200 23ms","method":"POST","requestID":"c518c99d31aa06d34272aba758a16531","responseTime":23,"status":200,"url":"/devices/6b3bf8d6-0813-4da6-bae4-d890f705c183/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/6b3bf8d6-0813-4da6-bae4-d890f705c183' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2Nn0.VYEGrwC1QLerbLv_-N8t9mJ0rFla_1GtGjp7sE-QdMo","level":"info","message":"auth send jwt","requestID":"266c9d2bb78a0f09cfe01596bbac5a06"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"266c9d2bb78a0f09cfe01596bbac5a06","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"266c9d2bb78a0f09cfe01596bbac5a06"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":186,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:46Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":186,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.60508,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"266c9d2bb78a0f09cfe01596bbac5a06","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377866,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2Nn0.VYEGrwC1QLerbLv_-N8t9mJ0rFla_1GtGjp7sE-QdMo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"266c9d2bb78a0f09cfe01596bbac5a06","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a4c4d94-39ce-4252-b5e8-08cc4731593d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a4c4d94-39ce-4252-b5e8-08cc4731593d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:43.975915715Z"}]},"request_id":"6f47ebe1-39ec-40c0-b487-d3035f26569f","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377866.1135116} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"266c9d2bb78a0f09cfe01596bbac5a06","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"266c9d2bb78a0f09cfe01596bbac5a06"} device-1 | {"level":"info","message":"GET /devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d? 200 18ms","method":"GET","requestID":"266c9d2bb78a0f09cfe01596bbac5a06","responseTime":18,"status":200,"url":"/devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d?"} gateway-1 | {"time_local":"03/Sep/2024:15:37:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d? 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":"266c9d2bb78a0f09cfe01596bbac5a06"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2Nn0.VYEGrwC1QLerbLv_-N8t9mJ0rFla_1GtGjp7sE-QdMo","level":"info","message":"auth send jwt","requestID":"034535ca2df5a7e4c9bc3f4d36448f24"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"034535ca2df5a7e4c9bc3f4d36448f24","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"034535ca2df5a7e4c9bc3f4d36448f24"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":187,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:46Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":187,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.452617,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b3bf8d6-0813-4da6-bae4-d890f705c183","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"034535ca2df5a7e4c9bc3f4d36448f24","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/6b3bf8d6-0813-4da6-bae4-d890f705c183","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377866,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2Nn0.VYEGrwC1QLerbLv_-N8t9mJ0rFla_1GtGjp7sE-QdMo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"034535ca2df5a7e4c9bc3f4d36448f24","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b3bf8d6-0813-4da6-bae4-d890f705c183","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b3bf8d6-0813-4da6-bae4-d890f705c183","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:44.025845928Z"}]},"request_id":"4398fbef-2e48-48d5-a32a-1415875a5387","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377866.1379445} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"034535ca2df5a7e4c9bc3f4d36448f24","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"034535ca2df5a7e4c9bc3f4d36448f24"} gateway-1 | {"time_local":"03/Sep/2024:15:37:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6b3bf8d6-0813-4da6-bae4-d890f705c183? 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":"034535ca2df5a7e4c9bc3f4d36448f24"} device-1 | {"level":"info","message":"GET /devices/6b3bf8d6-0813-4da6-bae4-d890f705c183? 200 19ms","method":"GET","requestID":"034535ca2df5a7e4c9bc3f4d36448f24","responseTime":19,"status":200,"url":"/devices/6b3bf8d6-0813-4da6-bae4-d890f705c183?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2Nn0.VYEGrwC1QLerbLv_-N8t9mJ0rFla_1GtGjp7sE-QdMo","level":"info","message":"auth send jwt","requestID":"084549bd35144456f67952060af7d699"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"084549bd35144456f67952060af7d699","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"084549bd35144456f67952060af7d699"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":188,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:46Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":188,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.378466,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"084549bd35144456f67952060af7d699","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377866,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2Nn0.VYEGrwC1QLerbLv_-N8t9mJ0rFla_1GtGjp7sE-QdMo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"084549bd35144456f67952060af7d699","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a73d0c7c-5612-4e97-9c85-d1c7404987e4"},"level":"info","message":"Attempting to run experiment","requestID":"084549bd35144456f67952060af7d699"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a73d0c7c-5612-4e97-9c85-d1c7404987e4"},"level":"info","message":"Attempting to book experiment","requestID":"084549bd35144456f67952060af7d699"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a73d0c7c-5612-4e97-9c85-d1c7404987e4"},"level":"info","message":"Successfully booked experiment","requestID":"084549bd35144456f67952060af7d699"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"77b03ab0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"77b088d0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":189,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:46Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":189,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.283053,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:46Z"} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Received request.","req_id":190,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"77b03ab0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377866,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2Nn0.VYEGrwC1QLerbLv_-N8t9mJ0rFla_1GtGjp7sE-QdMo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"77b03ab0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Sent response.","req_id":190,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.566988,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b3bf8d6-0813-4da6-bae4-d890f705c183","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"77b088d0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/6b3bf8d6-0813-4da6-bae4-d890f705c183","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377866,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2Nn0.VYEGrwC1QLerbLv_-N8t9mJ0rFla_1GtGjp7sE-QdMo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"77b088d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a4c4d94-39ce-4252-b5e8-08cc4731593d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a4c4d94-39ce-4252-b5e8-08cc4731593d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:43.975915715Z"}]},"request_id":"915b934b-1d97-4af9-b57f-7b0c6aef89bf","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377866.21366} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"77b03ab0-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b3bf8d6-0813-4da6-bae4-d890f705c183","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b3bf8d6-0813-4da6-bae4-d890f705c183","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:44.025845928Z"}]},"request_id":"321057d3-dd85-4adf-9d59-228f40bf3492","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377866.2155735} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"77b088d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"77b03ab0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d? 200 17ms","method":"GET","requestID":"77b03ab0-6a0a-11ef-9b41-2363e6623fc8","responseTime":17,"status":200,"url":"/devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"77b088d0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/6b3bf8d6-0813-4da6-bae4-d890f705c183? 200 16ms","method":"GET","requestID":"77b088d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":16,"status":200,"url":"/devices/6b3bf8d6-0813-4da6-bae4-d890f705c183?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a73d0c7c-5612-4e97-9c85-d1c7404987e4"},"level":"info","message":"Setting up experiment","requestID":"084549bd35144456f67952060af7d699"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a73d0c7c-5612-4e97-9c85-d1c7404987e4"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"084549bd35144456f67952060af7d699"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a73d0c7c-5612-4e97-9c85-d1c7404987e4"},"level":"info","message":"Successfully locked booking for experiment","requestID":"084549bd35144456f67952060af7d699"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a73d0c7c-5612-4e97-9c85-d1c7404987e4"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"084549bd35144456f67952060af7d699"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a73d0c7c-5612-4e97-9c85-d1c7404987e4"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"084549bd35144456f67952060af7d699"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a73d0c7c-5612-4e97-9c85-d1c7404987e4"},"level":"info","message":"Attempting to update booking for experiment","requestID":"084549bd35144456f67952060af7d699"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a73d0c7c-5612-4e97-9c85-d1c7404987e4"},"level":"info","message":"Successfully updated booking for experiment","requestID":"084549bd35144456f67952060af7d699"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a73d0c7c-5612-4e97-9c85-d1c7404987e4"},"level":"info","message":"Successfully set up experiment","requestID":"084549bd35144456f67952060af7d699"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"77bbac60-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"77bbfa80-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"77bc48a0-6a0a-11ef-9b41-2363e6623fc8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a73d0c7c-5612-4e97-9c85-d1c7404987e4"},"level":"info","message":"Successfully running experiment","requestID":"084549bd35144456f67952060af7d699"} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Received request.","req_id":191,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:46Z"} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Sent response.","req_id":191,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.890245,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:46Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":192,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"77bbac60-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377866,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2Nn0.VYEGrwC1QLerbLv_-N8t9mJ0rFla_1GtGjp7sE-QdMo"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"77bbac60-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":192,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.014778,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:46Z"} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Received request.","req_id":193,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b3bf8d6-0813-4da6-bae4-d890f705c183","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"77bbfa80-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/6b3bf8d6-0813-4da6-bae4-d890f705c183","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377866,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2Nn0.VYEGrwC1QLerbLv_-N8t9mJ0rFla_1GtGjp7sE-QdMo"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"77bbfa80-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Sent response.","req_id":193,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.943987,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:46Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a4c4d94-39ce-4252-b5e8-08cc4731593d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6e9d0e0a-59d8-481a-9721-f7635411c43c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377866.2944212} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"77bc48a0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d","object_type":"device","rebac_allow":false,"scope_allow":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":"77bc48a0-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a4c4d94-39ce-4252-b5e8-08cc4731593d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a4c4d94-39ce-4252-b5e8-08cc4731593d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:43.975915715Z"}]},"request_id":"152c6d84-b291-432c-a21c-c2b21d6cd70c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377866.2957025} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"77bbac60-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b3bf8d6-0813-4da6-bae4-d890f705c183","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b3bf8d6-0813-4da6-bae4-d890f705c183","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:44.025845928Z"}]},"request_id":"c28b36f2-ed7e-4775-bd9f-e1ff5c0e6f95","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377866.2992253} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"77bbfa80-6a0a-11ef-9b41-2363e6623fc8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"77bc48a0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d/signaling 200 18ms","method":"POST","requestID":"77bc48a0-6a0a-11ef-9b41-2363e6623fc8","responseTime":18,"status":200,"url":"/devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"77bf7cf0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"77bbac60-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d? 200 27ms","method":"GET","requestID":"77bbac60-6a0a-11ef-9b41-2363e6623fc8","responseTime":27,"status":200,"url":"/devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"77bbfa80-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/6b3bf8d6-0813-4da6-bae4-d890f705c183? 200 26ms","method":"GET","requestID":"77bbfa80-6a0a-11ef-9b41-2363e6623fc8","responseTime":26,"status":200,"url":"/devices/6b3bf8d6-0813-4da6-bae4-d890f705c183?"} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Received request.","req_id":194,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:46Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b3bf8d6-0813-4da6-bae4-d890f705c183","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c61e6d19-64ad-40de-8b50-2ab4c532ec08","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377866.3082485} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Sent response.","req_id":194,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.001032,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:46Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"77c06750-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b3bf8d6-0813-4da6-bae4-d890f705c183","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"77bf7cf0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6b3bf8d6-0813-4da6-bae4-d890f705c183","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"77bf7cf0-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa73d0c7c-5612-4e97-9c85-d1c7404987e4#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa73d0c7c-5612-4e97-9c85-d1c7404987e4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"6314ec3e-184b-428c-a4e0-67e167c6b168","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377866.3096027} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6a892204-e464-4441-9834-03475d7c962b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377866.3097606} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"084549bd35144456f67952060af7d699","responseTime":25,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"77bf7cf0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/6b3bf8d6-0813-4da6-bae4-d890f705c183/signaling 200 9ms","method":"POST","requestID":"77bf7cf0-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/devices/6b3bf8d6-0813-4da6-bae4-d890f705c183/signaling"} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Received request.","req_id":195,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:46Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a4c4d94-39ce-4252-b5e8-08cc4731593d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"321c460d-9f79-4a59-8166-069b0b867d1b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377866.3154485} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Sent response.","req_id":195,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.916883,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"77c06750-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"77c06750-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/a73d0c7c-5612-4e97-9c85-d1c7404987e4","user":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"084549bd35144456f67952060af7d699"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"77c06750-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d/signaling 200 11ms","method":"POST","requestID":"77c06750-6a0a-11ef-9b41-2363e6623fc8","responseTime":11,"status":200,"url":"/devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d/signaling"} gateway-1 | {"time_local":"03/Sep/2024:15:37:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"811","request_time":"0.173","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"084549bd35144456f67952060af7d699"} experiment-1 | {"level":"info","message":"POST /experiments? 201 168ms","method":"POST","requestID":"084549bd35144456f67952060af7d699","responseTime":168,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"77c26320-6a0a-11ef-9b41-2363e6623fc8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2Nn0.VYEGrwC1QLerbLv_-N8t9mJ0rFla_1GtGjp7sE-QdMo","level":"info","message":"auth send jwt","requestID":"29bfb43cb965300252cd04e96e9e23ef"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"29bfb43cb965300252cd04e96e9e23ef","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"29bfb43cb965300252cd04e96e9e23ef"} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Received request.","req_id":196,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:46Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b3bf8d6-0813-4da6-bae4-d890f705c183","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6fe69902-258e-464a-b719-da2d769cc853","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377866.327297} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":197,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:46Z"} authorization-1 | {"client_addr":"127.0.0.1:38726","level":"info","msg":"Sent response.","req_id":196,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.665568,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b3bf8d6-0813-4da6-bae4-d890f705c183","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"77c26320-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6b3bf8d6-0813-4da6-bae4-d890f705c183","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"77c26320-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":197,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.638007,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"29bfb43cb965300252cd04e96e9e23ef","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377866,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2Nn0.VYEGrwC1QLerbLv_-N8t9mJ0rFla_1GtGjp7sE-QdMo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"29bfb43cb965300252cd04e96e9e23ef","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"77c26320-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/6b3bf8d6-0813-4da6-bae4-d890f705c183/signaling 200 11ms","method":"POST","requestID":"77c26320-6a0a-11ef-9b41-2363e6623fc8","responseTime":11,"status":200,"url":"/devices/6b3bf8d6-0813-4da6-bae4-d890f705c183/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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a4c4d94-39ce-4252-b5e8-08cc4731593d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a4c4d94-39ce-4252-b5e8-08cc4731593d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:43.975915715Z"}]},"request_id":"8a744911-0771-4f93-a1ad-633a261f604c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377866.333385} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a73d0c7c-5612-4e97-9c85-d1c7404987e4"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"084549bd35144456f67952060af7d699"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a73d0c7c-5612-4e97-9c85-d1c7404987e4"},"level":"info","message":"Building connection plan","requestID":"084549bd35144456f67952060af7d699"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"9ef932b4-1ea5-461d-84f4-b8c5d709e6c4"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"a2c96b34-c463-40a5-a29a-83b386a7bf5e"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"b13adbd7-c893-41fa-9c3e-c79a6a4b3233"}]},"level":"info","message":"Built pairwise service configurations","requestID":"084549bd35144456f67952060af7d699"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"29bfb43cb965300252cd04e96e9e23ef","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/6b3bf8d6-0813-4da6-bae4-d890f705c183"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"084549bd35144456f67952060af7d699"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"77c48600-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"29bfb43cb965300252cd04e96e9e23ef"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":198,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:46Z"} gateway-1 | {"time_local":"03/Sep/2024:15:37:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d? 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":"29bfb43cb965300252cd04e96e9e23ef"} device-1 | {"level":"info","message":"GET /devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d? 200 13ms","method":"GET","requestID":"29bfb43cb965300252cd04e96e9e23ef","responseTime":13,"status":200,"url":"/devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d?"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":198,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.741383,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"77c48600-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377866,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2Nn0.VYEGrwC1QLerbLv_-N8t9mJ0rFla_1GtGjp7sE-QdMo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"77c48600-6a0a-11ef-9b41-2363e6623fc8","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2Nn0.VYEGrwC1QLerbLv_-N8t9mJ0rFla_1GtGjp7sE-QdMo","level":"info","message":"auth send jwt","requestID":"6ee518b8c55871ee60819d03cf394060"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6ee518b8c55871ee60819d03cf394060","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6ee518b8c55871ee60819d03cf394060"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":199,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:46Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":199,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.203084,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b3bf8d6-0813-4da6-bae4-d890f705c183","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6ee518b8c55871ee60819d03cf394060","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/6b3bf8d6-0813-4da6-bae4-d890f705c183","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377866,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2Nn0.VYEGrwC1QLerbLv_-N8t9mJ0rFla_1GtGjp7sE-QdMo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6ee518b8c55871ee60819d03cf394060","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","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%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"82eb0ba5-adc3-41f1-8254-ae8c47655f1d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377866.356413} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d45652f0-73b0-419c-9330-2defd061600a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377866.3566628} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b3bf8d6-0813-4da6-bae4-d890f705c183","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b3bf8d6-0813-4da6-bae4-d890f705c183","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:44.025845928Z"}]},"request_id":"000f3fd1-3483-4cb6-b3ff-cdf9836d7484","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377866.3579512} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"77c48600-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/relations/update"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6ee518b8c55871ee60819d03cf394060","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6ee518b8c55871ee60819d03cf394060"} gateway-1 | {"time_local":"03/Sep/2024:15:37:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6b3bf8d6-0813-4da6-bae4-d890f705c183? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.030","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6ee518b8c55871ee60819d03cf394060"} device-1 | {"level":"info","message":"GET /devices/6b3bf8d6-0813-4da6-bae4-d890f705c183? 200 23ms","method":"GET","requestID":"6ee518b8c55871ee60819d03cf394060","responseTime":23,"status":200,"url":"/devices/6b3bf8d6-0813-4da6-bae4-d890f705c183?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"77c48600-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"77c48600-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/374bec0c-fe7b-4115-bdd2-f63a311bded0'","requestID":"77c48600-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/374bec0c-fe7b-4115-bdd2-f63a311bded0'","requestID":"77c48600-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"77c48600-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 43ms","method":"POST","requestID":"77c48600-6a0a-11ef-9b41-2363e6623fc8","responseTime":43,"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":"77c48600-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/374bec0c-fe7b-4115-bdd2-f63a311bded0","device":"6b3bf8d6-0813-4da6-bae4-d890f705c183","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/a73d0c7c-5612-4e97-9c85-d1c7404987e4"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"084549bd35144456f67952060af7d699"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"77cf5b70-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":200,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:46Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a4c4d94-39ce-4252-b5e8-08cc4731593d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"875c4098-42a0-466b-9d01-16dd8c589981","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377866.4117517} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":200,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.345743,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"77cf5b70-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"77cf5b70-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"77cf5b70-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d/signaling 200 8ms","method":"POST","requestID":"77cf5b70-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"77d0e210-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":201,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:46Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b3bf8d6-0813-4da6-bae4-d890f705c183","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a78e6b2e-42c6-44e5-8be0-c26c8af92dc0","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377866.4213698} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":201,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.389659,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b3bf8d6-0813-4da6-bae4-d890f705c183","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"77d0e210-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6b3bf8d6-0813-4da6-bae4-d890f705c183","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"77d0e210-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"6b3bf8d6-0813-4da6-bae4-d890f705c183","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"6b3bf8d6-0813-4da6-bae4-d890f705c183","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"77d0e210-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/6b3bf8d6-0813-4da6-bae4-d890f705c183/signaling 200 11ms","method":"POST","requestID":"77d0e210-6a0a-11ef-9b41-2363e6623fc8","responseTime":11,"status":200,"url":"/devices/6b3bf8d6-0813-4da6-bae4-d890f705c183/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 6994872932818317460 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:zhWU\r\na=ice-pwd:EZe4DmsswdrGUryiNOwURTm+\r\na=ice-options:trickle\r\na=fingerprint:sha-256 1E:0D:5A:18:8F:FD:C6:B2:D5:BB:0E:B0:4B:38:8C:D4:3D:B6:01:E6:00:AC:C0:0D:C0:DB:59:C2:F5:4B:3F:B9\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"6b3bf8d6-0813-4da6-bae4-d890f705c183","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/6b3bf8d6-0813-4da6-bae4-d890f705c183'"} device-1 | {"device":"6b3bf8d6-0813-4da6-bae4-d890f705c183","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"4a4c4d94-39ce-4252-b5e8-08cc4731593d","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":"374bec0c-fe7b-4115-bdd2-f63a311bded0","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"4a4c4d94-39ce-4252-b5e8-08cc4731593d","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":"4a4c4d94-39ce-4252-b5e8-08cc4731593d","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":"4a4c4d94-39ce-4252-b5e8-08cc4731593d","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":"4a4c4d94-39ce-4252-b5e8-08cc4731593d","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/374bec0c-fe7b-4115-bdd2-f63a311bded0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"374bec0c-fe7b-4115-bdd2-f63a311bded0","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bd091f7538a157182efd29d006e2f452","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"bd091f7538a157182efd29d006e2f452","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/4a4c4d94-39ce-4252-b5e8-08cc4731593d"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/6b3bf8d6-0813-4da6-bae4-d890f705c183"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/374bec0c-fe7b-4115-bdd2-f63a311bded0"}}},"level":"info","message":"received a callback","requestID":"bd091f7538a157182efd29d006e2f452"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"bd091f7538a157182efd29d006e2f452","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:37:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"bd091f7538a157182efd29d006e2f452"} device-1 | {"content":{"candidate":"candidate:3809119026 1 udp 2113937151 215e05b9-69f0-4184-8eed-3fa39f55d108.local 51407 typ host generation 0 ufrag zhWU network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"6b3bf8d6-0813-4da6-bae4-d890f705c183","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1881221665 1 udp 1677729535 141.24.211.56 51407 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag zhWU network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"6b3bf8d6-0813-4da6-bae4-d890f705c183","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3456995795 1 udp 33562623 141.24.210.113 51924 typ relay raddr 141.24.211.56 rport 51407 generation 0 ufrag zhWU network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"6b3bf8d6-0813-4da6-bae4-d890f705c183","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"6b3bf8d6-0813-4da6-bae4-d890f705c183","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"4a4c4d94-39ce-4252-b5e8-08cc4731593d","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":"6b3bf8d6-0813-4da6-bae4-d890f705c183","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"4a4c4d94-39ce-4252-b5e8-08cc4731593d","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":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/6b3bf8d6-0813-4da6-bae4-d890f705c183'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/6b3bf8d6-0813-4da6-bae4-d890f705c183'"} device-1 | {"data":{"peerconnection":"374bec0c-fe7b-4115-bdd2-f63a311bded0","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"374bec0c-fe7b-4115-bdd2-f63a311bded0","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/374bec0c-fe7b-4115-bdd2-f63a311bded0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"374bec0c-fe7b-4115-bdd2-f63a311bded0","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1b4eadb2a9461b614f41e6ad5e9f02cd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"1b4eadb2a9461b614f41e6ad5e9f02cd","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/4a4c4d94-39ce-4252-b5e8-08cc4731593d"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6b3bf8d6-0813-4da6-bae4-d890f705c183"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/374bec0c-fe7b-4115-bdd2-f63a311bded0"}}},"level":"info","message":"received a callback","requestID":"1b4eadb2a9461b614f41e6ad5e9f02cd"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"793023f0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":202,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:48Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F374bec0c-fe7b-4115-bdd2-f63a311bded0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"64d91020-02c9-4e86-972a-dd2ff6452630","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377868.7236314} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":202,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.369045,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/374bec0c-fe7b-4115-bdd2-f63a311bded0","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"793023f0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/374bec0c-fe7b-4115-bdd2-f63a311bded0","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":"793023f0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"793023f0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /peerconnections/374bec0c-fe7b-4115-bdd2-f63a311bded0 200 8ms","method":"GET","requestID":"793023f0-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/peerconnections/374bec0c-fe7b-4115-bdd2-f63a311bded0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 41ms","method":"POST","requestID":"1b4eadb2a9461b614f41e6ad5e9f02cd","responseTime":41,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:37:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch","requestID":"1b4eadb2a9461b614f41e6ad5e9f02cd"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"79357b20-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":203,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:48Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a4c4d94-39ce-4252-b5e8-08cc4731593d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"28d74b54-78d8-4309-9f1d-6c96cf3476c7","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377868.7610717} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":203,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.468528,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"79357b20-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"79357b20-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"79357b20-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d/signaling 200 13ms","method":"POST","requestID":"79357b20-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7937ec20-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":204,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:48Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b3bf8d6-0813-4da6-bae4-d890f705c183","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"95ff41b1-8254-4848-b8bd-bff75f1cf605","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377868.7771637} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":204,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.802024,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b3bf8d6-0813-4da6-bae4-d890f705c183","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7937ec20-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6b3bf8d6-0813-4da6-bae4-d890f705c183","object_type":"device","rebac_allow":false,"scope_allow":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":"7937ec20-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7937ec20-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/6b3bf8d6-0813-4da6-bae4-d890f705c183/signaling 200 14ms","method":"POST","requestID":"7937ec20-6a0a-11ef-9b41-2363e6623fc8","responseTime":14,"status":200,"url":"/devices/6b3bf8d6-0813-4da6-bae4-d890f705c183/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2OH0.y1NZ2TZVDfCVoceUCszWTmPlhMqWnLYLh6rV5unzLS8","level":"info","message":"auth send jwt","requestID":"25a2944b70d154cb785118205f1bd951"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"25a2944b70d154cb785118205f1bd951","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/a73d0c7c-5612-4e97-9c85-d1c7404987e4","requestID":"25a2944b70d154cb785118205f1bd951"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":205,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:48Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":205,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.209462,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/a73d0c7c-5612-4e97-9c85-d1c7404987e4","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"25a2944b70d154cb785118205f1bd951","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/a73d0c7c-5612-4e97-9c85-d1c7404987e4","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377868,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2OH0.y1NZ2TZVDfCVoceUCszWTmPlhMqWnLYLh6rV5unzLS8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"25a2944b70d154cb785118205f1bd951","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/a73d0c7c-5612-4e97-9c85-d1c7404987e4","requestID":"25a2944b70d154cb785118205f1bd951"} gateway-1 | {"time_local":"03/Sep/2024:15:37:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/a73d0c7c-5612-4e97-9c85-d1c7404987e4 HTTP/1.1","status": "200","body_bytes_sent":"884","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"25a2944b70d154cb785118205f1bd951"} experiment-1 | {"level":"info","message":"GET /experiments/a73d0c7c-5612-4e97-9c85-d1c7404987e4 200 17ms","method":"GET","requestID":"25a2944b70d154cb785118205f1bd951","responseTime":17,"status":200,"url":"/experiments/a73d0c7c-5612-4e97-9c85-d1c7404987e4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2OH0.y1NZ2TZVDfCVoceUCszWTmPlhMqWnLYLh6rV5unzLS8","level":"info","message":"auth send jwt","requestID":"271bbc80f9790509a5240e6385b5fa99"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"271bbc80f9790509a5240e6385b5fa99","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/a73d0c7c-5612-4e97-9c85-d1c7404987e4","requestID":"271bbc80f9790509a5240e6385b5fa99"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":206,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:48Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":206,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.211493,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:48Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/a73d0c7c-5612-4e97-9c85-d1c7404987e4","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"271bbc80f9790509a5240e6385b5fa99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/a73d0c7c-5612-4e97-9c85-d1c7404987e4","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377868,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2OH0.y1NZ2TZVDfCVoceUCszWTmPlhMqWnLYLh6rV5unzLS8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"271bbc80f9790509a5240e6385b5fa99","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a73d0c7c-5612-4e97-9c85-d1c7404987e4"},"level":"info","message":"Attempting to finish experiment","requestID":"271bbc80f9790509a5240e6385b5fa99"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"79518ea0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":207,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:48Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":207,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.821137,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:48Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/374bec0c-fe7b-4115-bdd2-f63a311bded0","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"79518ea0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:http://localhost/peerconnections/374bec0c-fe7b-4115-bdd2-f63a311bded0","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377868,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2OH0.y1NZ2TZVDfCVoceUCszWTmPlhMqWnLYLh6rV5unzLS8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"79518ea0-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/374bec0c-fe7b-4115-bdd2-f63a311bded0","device":"6b3bf8d6-0813-4da6-bae4-d890f705c183","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"4a4c4d94-39ce-4252-b5e8-08cc4731593d","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":"4a4c4d94-39ce-4252-b5e8-08cc4731593d","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":"4a4c4d94-39ce-4252-b5e8-08cc4731593d","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/374bec0c-fe7b-4115-bdd2-f63a311bded0' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/374bec0c-fe7b-4115-bdd2-f63a311bded0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"374bec0c-fe7b-4115-bdd2-f63a311bded0","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f00e4c388f5c0e4270ddeb2b725a3854","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"f00e4c388f5c0e4270ddeb2b725a3854","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F374bec0c-fe7b-4115-bdd2-f63a311bded0': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F374bec0c-fe7b-4115-bdd2-f63a311bded0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"bfcb7e74-445f-45bf-b6dc-b30896b572fe","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377868.9709249} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8149df5c-2b2e-46a3-940a-230fd6b639b3","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377868.9714627} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"102860a815a408404ff7bf6ab3acf5fd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/4a4c4d94-39ce-4252-b5e8-08cc4731593d"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6b3bf8d6-0813-4da6-bae4-d890f705c183"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/374bec0c-fe7b-4115-bdd2-f63a311bded0"}}},"level":"info","message":"received a callback","requestID":"f00e4c388f5c0e4270ddeb2b725a3854"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"102860a815a408404ff7bf6ab3acf5fd","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"79518ea0-6a0a-11ef-9b41-2363e6623fc8","responseTime":18,"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":"closed","url":"http://localhost/devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6b3bf8d6-0813-4da6-bae4-d890f705c183"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/374bec0c-fe7b-4115-bdd2-f63a311bded0"}}},"level":"info","message":"received a callback","requestID":"102860a815a408404ff7bf6ab3acf5fd"} device-1 | {"data":{"peerconnection":"374bec0c-fe7b-4115-bdd2-f63a311bded0","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"79518ea0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"DELETE /peerconnections/374bec0c-fe7b-4115-bdd2-f63a311bded0 204 58ms","method":"DELETE","requestID":"79518ea0-6a0a-11ef-9b41-2363e6623fc8","responseTime":58,"status":204,"url":"/peerconnections/374bec0c-fe7b-4115-bdd2-f63a311bded0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a73d0c7c-5612-4e97-9c85-d1c7404987e4"},"level":"info","message":"Successfully finished experiment","requestID":"271bbc80f9790509a5240e6385b5fa99"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"795e11c0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":208,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:49Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a4c4d94-39ce-4252-b5e8-08cc4731593d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d535d2e6-cd3e-4f72-8341-26447eb8b87a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377869.0279253} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":208,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.491839,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"795e11c0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d","object_type":"device","rebac_allow":false,"scope_allow":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":"795e11c0-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa73d0c7c-5612-4e97-9c85-d1c7404987e4': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa73d0c7c-5612-4e97-9c85-d1c7404987e4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"92ed945c-80c0-4c7c-8807-71f33ad6e748","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377869.0342302} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"795e11c0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d/signaling 200 15ms","method":"POST","requestID":"795e11c0-6a0a-11ef-9b41-2363e6623fc8","responseTime":15,"status":200,"url":"/devices/4a4c4d94-39ce-4252-b5e8-08cc4731593d/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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5ae3358b-fd01-4edf-9f3b-3edfeb10725c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377869.0348446} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"271bbc80f9790509a5240e6385b5fa99","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7960d0e0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":209,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:49Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b3bf8d6-0813-4da6-bae4-d890f705c183","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f1e33f80-18cf-4f14-b23f-24de3604cb8d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377869.0456583} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":209,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.649594,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b3bf8d6-0813-4da6-bae4-d890f705c183","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7960d0e0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6b3bf8d6-0813-4da6-bae4-d890f705c183","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"7960d0e0-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7960d0e0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/6b3bf8d6-0813-4da6-bae4-d890f705c183/signaling 200 14ms","method":"POST","requestID":"7960d0e0-6a0a-11ef-9b41-2363e6623fc8","responseTime":14,"status":200,"url":"/devices/6b3bf8d6-0813-4da6-bae4-d890f705c183/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/a73d0c7c-5612-4e97-9c85-d1c7404987e4","requestID":"271bbc80f9790509a5240e6385b5fa99"} gateway-1 | {"time_local":"03/Sep/2024:15:37:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/a73d0c7c-5612-4e97-9c85-d1c7404987e4 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.188","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"271bbc80f9790509a5240e6385b5fa99"} gateway-1 | {"time_local":"03/Sep/2024:15:37:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2991","request_time":"4.543","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"fda120cc33469b71b837eff9f90d549b"} experiment-1 | {"level":"info","message":"DELETE /experiments/a73d0c7c-5612-4e97-9c85-d1c7404987e4 204 184ms","method":"DELETE","requestID":"271bbc80f9790509a5240e6385b5fa99","responseTime":184,"status":204,"url":"/experiments/a73d0c7c-5612-4e97-9c85-d1c7404987e4"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 134ms","method":"POST","requestID":"f00e4c388f5c0e4270ddeb2b725a3854","responseTime":134,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:37:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.139","http_referrer":"","http_user_agent":"node-fetch","requestID":"f00e4c388f5c0e4270ddeb2b725a3854"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 133ms","method":"POST","requestID":"102860a815a408404ff7bf6ab3acf5fd","responseTime":133,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:37:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.139","http_referrer":"","http_user_agent":"node-fetch","requestID":"102860a815a408404ff7bf6ab3acf5fd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2OX0.vCF6zX8m3wV4nJcwKTs_WCNAexgiAg1YbiAQTFB16iE","level":"info","message":"auth send jwt","requestID":"958db3a4402cb6a07430b9546161ba37"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"958db3a4402cb6a07430b9546161ba37","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"958db3a4402cb6a07430b9546161ba37"} gateway-1 | {"time_local":"03/Sep/2024:15:37:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2501","request_time":"3.038","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b5fa923414de7ada78de68574515ff1c"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":210,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:49Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":210,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.069635,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"958db3a4402cb6a07430b9546161ba37","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377869,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2OX0.vCF6zX8m3wV4nJcwKTs_WCNAexgiAg1YbiAQTFB16iE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"958db3a4402cb6a07430b9546161ba37","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/4a4c4d94-39ce-4252-b5e8-08cc4731593d' 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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9740219c-992e-4d17-ab19-6ee435d8c67f","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377869.1364958} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"958db3a4402cb6a07430b9546161ba37","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/6b3bf8d6-0813-4da6-bae4-d890f705c183' 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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"448b7cca-e960-4a66-a51d-7d1e4f1a8d72","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377869.1436958} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"958db3a4402cb6a07430b9546161ba37","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"7f3d7428-8b5f-47bc-b8ef-9c761ce6ab81","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377869.1546488} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"48936b77-47e9-4ae1-af74-7589e51d5fcd","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377869.1549132} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"958db3a4402cb6a07430b9546161ba37","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:49.154630704Z"}]},"request_id":"8e6388cd-f5f3-4243-a3fc-7ce0ba8f392c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377869.160965} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"958db3a4402cb6a07430b9546161ba37","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"958db3a4402cb6a07430b9546161ba37"} gateway-1 | {"time_local":"03/Sep/2024:15:37:49 +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":"958db3a4402cb6a07430b9546161ba37"} device-1 | {"level":"info","message":"POST /devices? 201 52ms","method":"POST","requestID":"958db3a4402cb6a07430b9546161ba37","responseTime":52,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2OX0.vCF6zX8m3wV4nJcwKTs_WCNAexgiAg1YbiAQTFB16iE","level":"info","message":"auth send jwt","requestID":"2670c82b39de25c8741cea3cbe0f1f0d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2670c82b39de25c8741cea3cbe0f1f0d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"2670c82b39de25c8741cea3cbe0f1f0d"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":211,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:49Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":211,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.850818,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"2670c82b39de25c8741cea3cbe0f1f0d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377869,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg2OX0.vCF6zX8m3wV4nJcwKTs_WCNAexgiAg1YbiAQTFB16iE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2670c82b39de25c8741cea3cbe0f1f0d","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"82d45e06-c1d3-4386-b6ab-8283538b68ee","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377869.19775} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2670c82b39de25c8741cea3cbe0f1f0d","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dba00cc9-7e49-478a-a701-862e7485ba1d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377869.2038682} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"2670c82b39de25c8741cea3cbe0f1f0d","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"9960aa64-0c87-4243-a20e-c0767b9ae7b3","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377869.2156968} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f441b7bb-9c70-4d6c-8741-5a411ff5691e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377869.2160017} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"2670c82b39de25c8741cea3cbe0f1f0d","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:49.215675769Z"}]},"request_id":"55bc48c3-9837-47af-96af-f5f346730428","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377869.222628} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2670c82b39de25c8741cea3cbe0f1f0d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2670c82b39de25c8741cea3cbe0f1f0d"} gateway-1 | {"time_local":"03/Sep/2024:15:37:49 +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":"2670c82b39de25c8741cea3cbe0f1f0d"} device-1 | {"level":"info","message":"POST /devices? 201 55ms","method":"POST","requestID":"2670c82b39de25c8741cea3cbe0f1f0d","responseTime":55,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4bdfb92f075a9d35c74f881747e30c71","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"4bdfb92f075a9d35c74f881747e30c71","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"03/Sep/2024:15:37:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf/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":"4bdfb92f075a9d35c74f881747e30c71"} device-1 | {"level":"info","message":"OPTIONS /devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf/websocket 200 1ms","method":"OPTIONS","requestID":"4bdfb92f075a9d35c74f881747e30c71","responseTime":1,"status":200,"url":"/devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3MX0.YvYwgmQN8QSnx7kzOTVBAIgtTOe-Fs4SPqUEYVOmwSo","level":"info","message":"auth send jwt","requestID":"41a0d9e3eb5d7998b72d78c97012ae56"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"41a0d9e3eb5d7998b72d78c97012ae56","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"41a0d9e3eb5d7998b72d78c97012ae56"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":212,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":212,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.303532,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:51Z"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"345978583301ca8a9a42208c741c57cc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"41a0d9e3eb5d7998b72d78c97012ae56","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377871,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3MX0.YvYwgmQN8QSnx7kzOTVBAIgtTOe-Fs4SPqUEYVOmwSo"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"345978583301ca8a9a42208c741c57cc","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"41a0d9e3eb5d7998b72d78c97012ae56","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"03/Sep/2024:15:37:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf/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":"345978583301ca8a9a42208c741c57cc"} device-1 | {"level":"info","message":"OPTIONS /devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf/websocket 200 2ms","method":"OPTIONS","requestID":"345978583301ca8a9a42208c741c57cc","responseTime":2,"status":200,"url":"/devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3MX0.YvYwgmQN8QSnx7kzOTVBAIgtTOe-Fs4SPqUEYVOmwSo","level":"info","message":"auth send jwt","requestID":"53f0817ca31109a68e51e90381e7ba75"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"53f0817ca31109a68e51e90381e7ba75","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"53f0817ca31109a68e51e90381e7ba75"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"41a0d9e3eb5d7998b72d78c97012ae56"} gateway-1 | {"time_local":"03/Sep/2024:15:37:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.033","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"41a0d9e3eb5d7998b72d78c97012ae56"} device-1 | {"level":"info","message":"POST /devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf/websocket 200 23ms","method":"POST","requestID":"41a0d9e3eb5d7998b72d78c97012ae56","responseTime":23,"status":200,"url":"/devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf/websocket"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":213,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":213,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.129458,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"53f0817ca31109a68e51e90381e7ba75","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377871,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3MX0.YvYwgmQN8QSnx7kzOTVBAIgtTOe-Fs4SPqUEYVOmwSo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"53f0817ca31109a68e51e90381e7ba75","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"53f0817ca31109a68e51e90381e7ba75"} device-1 | {"level":"info","message":"POST /devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf/websocket 200 25ms","method":"POST","requestID":"53f0817ca31109a68e51e90381e7ba75","responseTime":25,"status":200,"url":"/devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf/websocket"} gateway-1 | {"time_local":"03/Sep/2024:15:37:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf/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":"53f0817ca31109a68e51e90381e7ba75"} device-1 | {"level":"info","message":"device 'http://localhost/devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3MX0.YvYwgmQN8QSnx7kzOTVBAIgtTOe-Fs4SPqUEYVOmwSo","level":"info","message":"auth send jwt","requestID":"a99cb2eeaa6897c6dbd78db21f4684e2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a99cb2eeaa6897c6dbd78db21f4684e2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a99cb2eeaa6897c6dbd78db21f4684e2"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":214,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":214,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.880759,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a99cb2eeaa6897c6dbd78db21f4684e2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377871,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3MX0.YvYwgmQN8QSnx7kzOTVBAIgtTOe-Fs4SPqUEYVOmwSo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a99cb2eeaa6897c6dbd78db21f4684e2","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:49.154630704Z"}]},"request_id":"476a8d93-595a-4ce7-ace2-51ceaf4cb438","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377871.286576} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a99cb2eeaa6897c6dbd78db21f4684e2","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a99cb2eeaa6897c6dbd78db21f4684e2"} gateway-1 | {"time_local":"03/Sep/2024:15:37:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf? 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":"a99cb2eeaa6897c6dbd78db21f4684e2"} device-1 | {"level":"info","message":"GET /devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf? 200 16ms","method":"GET","requestID":"a99cb2eeaa6897c6dbd78db21f4684e2","responseTime":16,"status":200,"url":"/devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3MX0.YvYwgmQN8QSnx7kzOTVBAIgtTOe-Fs4SPqUEYVOmwSo","level":"info","message":"auth send jwt","requestID":"1993fc25f68d61ce8cdaeda99bed14e2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1993fc25f68d61ce8cdaeda99bed14e2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1993fc25f68d61ce8cdaeda99bed14e2"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":215,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":215,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.991335,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"1993fc25f68d61ce8cdaeda99bed14e2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377871,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3MX0.YvYwgmQN8QSnx7kzOTVBAIgtTOe-Fs4SPqUEYVOmwSo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1993fc25f68d61ce8cdaeda99bed14e2","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:49.215675769Z"}]},"request_id":"a19a526b-5371-4bdf-bafe-325ecb26a3ac","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377871.309384} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1993fc25f68d61ce8cdaeda99bed14e2","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1993fc25f68d61ce8cdaeda99bed14e2"} device-1 | {"level":"info","message":"GET /devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf? 200 15ms","method":"GET","requestID":"1993fc25f68d61ce8cdaeda99bed14e2","responseTime":15,"status":200,"url":"/devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf?"} gateway-1 | {"time_local":"03/Sep/2024:15:37:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf? 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":"1993fc25f68d61ce8cdaeda99bed14e2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3MX0.YvYwgmQN8QSnx7kzOTVBAIgtTOe-Fs4SPqUEYVOmwSo","level":"info","message":"auth send jwt","requestID":"9ea79b73d012373db37dc4d46a70241b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9ea79b73d012373db37dc4d46a70241b","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"9ea79b73d012373db37dc4d46a70241b"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":216,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":216,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.245771,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9ea79b73d012373db37dc4d46a70241b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377871,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3MX0.YvYwgmQN8QSnx7kzOTVBAIgtTOe-Fs4SPqUEYVOmwSo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9ea79b73d012373db37dc4d46a70241b","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/578ff48d-2499-4881-8cc5-9b3702d0e1c7"},"level":"info","message":"Attempting to run experiment","requestID":"9ea79b73d012373db37dc4d46a70241b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/578ff48d-2499-4881-8cc5-9b3702d0e1c7"},"level":"info","message":"Attempting to book experiment","requestID":"9ea79b73d012373db37dc4d46a70241b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/578ff48d-2499-4881-8cc5-9b3702d0e1c7"},"level":"info","message":"Successfully booked experiment","requestID":"9ea79b73d012373db37dc4d46a70241b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7ac4a6a0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7ac4f4c0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":217,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":217,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.23404,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7ac4a6a0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377871,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3MX0.YvYwgmQN8QSnx7kzOTVBAIgtTOe-Fs4SPqUEYVOmwSo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"7ac4a6a0-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":218,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":218,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.696692,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7ac4f4c0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377871,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3MX0.YvYwgmQN8QSnx7kzOTVBAIgtTOe-Fs4SPqUEYVOmwSo"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"7ac4f4c0-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:49.154630704Z"}]},"request_id":"93c3fb3d-6e52-446b-ad9a-f0dd2e99fdf4","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377871.3833365} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"7ac4a6a0-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:49.215675769Z"}]},"request_id":"58ec8ec0-3f61-46c5-95fe-cd1b64290865","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377871.3851326} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7ac4f4c0-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7ac4a6a0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf? 200 23ms","method":"GET","requestID":"7ac4a6a0-6a0a-11ef-9b41-2363e6623fc8","responseTime":23,"status":200,"url":"/devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7ac4f4c0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf? 200 23ms","method":"GET","requestID":"7ac4f4c0-6a0a-11ef-9b41-2363e6623fc8","responseTime":23,"status":200,"url":"/devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/578ff48d-2499-4881-8cc5-9b3702d0e1c7"},"level":"info","message":"Setting up experiment","requestID":"9ea79b73d012373db37dc4d46a70241b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/578ff48d-2499-4881-8cc5-9b3702d0e1c7"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"9ea79b73d012373db37dc4d46a70241b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/578ff48d-2499-4881-8cc5-9b3702d0e1c7"},"level":"info","message":"Successfully locked booking for experiment","requestID":"9ea79b73d012373db37dc4d46a70241b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/578ff48d-2499-4881-8cc5-9b3702d0e1c7"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"9ea79b73d012373db37dc4d46a70241b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/578ff48d-2499-4881-8cc5-9b3702d0e1c7"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"9ea79b73d012373db37dc4d46a70241b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/578ff48d-2499-4881-8cc5-9b3702d0e1c7"},"level":"info","message":"Attempting to update booking for experiment","requestID":"9ea79b73d012373db37dc4d46a70241b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/578ff48d-2499-4881-8cc5-9b3702d0e1c7"},"level":"info","message":"Successfully updated booking for experiment","requestID":"9ea79b73d012373db37dc4d46a70241b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/578ff48d-2499-4881-8cc5-9b3702d0e1c7"},"level":"info","message":"Successfully set up experiment","requestID":"9ea79b73d012373db37dc4d46a70241b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7ad102b0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7ad150d0-6a0a-11ef-9b41-2363e6623fc8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/578ff48d-2499-4881-8cc5-9b3702d0e1c7"},"level":"info","message":"Successfully running experiment","requestID":"9ea79b73d012373db37dc4d46a70241b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7ad177e0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":219,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":219,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.170585,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":220,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7ad102b0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377871,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3MX0.YvYwgmQN8QSnx7kzOTVBAIgtTOe-Fs4SPqUEYVOmwSo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7ad102b0-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":220,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.959786,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":221,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7ad150d0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377871,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3MX0.YvYwgmQN8QSnx7kzOTVBAIgtTOe-Fs4SPqUEYVOmwSo"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"7ad150d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5670bf05-ba19-400a-92d0-6bde46ff12ef","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377871.4615927} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":221,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.750776,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7ad177e0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"7ad177e0-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:49.154630704Z"}]},"request_id":"95f7ec72-dce6-4132-8838-be26828b2d5a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377871.4659848} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7ad177e0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf/signaling 200 13ms","method":"POST","requestID":"7ad177e0-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7ad102b0-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:49.215675769Z"}]},"request_id":"14f0d941-b145-4503-9ed9-fa86a8d7837f","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377871.4670713} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7ad150d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7ad40ff0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":222,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:51Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7ad102b0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf? 200 23ms","method":"GET","requestID":"7ad102b0-6a0a-11ef-9b41-2363e6623fc8","responseTime":23,"status":200,"url":"/devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7ad150d0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf? 200 22ms","method":"GET","requestID":"7ad150d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":22,"status":200,"url":"/devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf?"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"19c5facc-2873-443e-b06b-89e91ae4ba03","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377871.475753} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":222,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.174544,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7ad40ff0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"7ad40ff0-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F578ff48d-2499-4881-8cc5-9b3702d0e1c7#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F578ff48d-2499-4881-8cc5-9b3702d0e1c7","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"976cc8a2-958e-4614-ae1c-8aa9d200da73","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377871.477371} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7ad52160-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"46bef4c8-a4e2-4202-934b-2657e654ad81","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377871.477795} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"9ea79b73d012373db37dc4d46a70241b","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":223,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:51Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7ad40ff0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf/signaling 200 12ms","method":"POST","requestID":"7ad40ff0-6a0a-11ef-9b41-2363e6623fc8","responseTime":12,"status":200,"url":"/devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf/signaling"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"173dddbc-2b47-4492-b174-d90be44578cf","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377871.4849343} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":223,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.93793,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7ad52160-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"7ad52160-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/578ff48d-2499-4881-8cc5-9b3702d0e1c7","user":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"9ea79b73d012373db37dc4d46a70241b"} experiment-1 | {"level":"info","message":"POST /experiments? 201 168ms","method":"POST","requestID":"9ea79b73d012373db37dc4d46a70241b","responseTime":168,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"03/Sep/2024:15:37:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"777","request_time":"0.173","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9ea79b73d012373db37dc4d46a70241b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7ad52160-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf/signaling 200 12ms","method":"POST","requestID":"7ad52160-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7ad74440-6a0a-11ef-9b41-2363e6623fc8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3MX0.YvYwgmQN8QSnx7kzOTVBAIgtTOe-Fs4SPqUEYVOmwSo","level":"info","message":"auth send jwt","requestID":"3bc021c7541d74199fbde0ec7c2185a9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3bc021c7541d74199fbde0ec7c2185a9","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3bc021c7541d74199fbde0ec7c2185a9"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":224,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":225,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"839a4425-eed7-40f2-a3e7-a168f0cabc70","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377871.4976845} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":225,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.749163,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"3bc021c7541d74199fbde0ec7c2185a9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377871,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3MX0.YvYwgmQN8QSnx7kzOTVBAIgtTOe-Fs4SPqUEYVOmwSo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3bc021c7541d74199fbde0ec7c2185a9","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":224,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.066648,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7ad74440-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"7ad74440-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:49.154630704Z"}]},"request_id":"38aac087-2762-4ad0-a9c9-db5a017d314b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377871.502711} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3bc021c7541d74199fbde0ec7c2185a9","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7ad74440-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf/signaling 200 11ms","method":"POST","requestID":"7ad74440-6a0a-11ef-9b41-2363e6623fc8","responseTime":11,"status":200,"url":"/devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/578ff48d-2499-4881-8cc5-9b3702d0e1c7"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"9ea79b73d012373db37dc4d46a70241b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/578ff48d-2499-4881-8cc5-9b3702d0e1c7"},"level":"info","message":"Building connection plan","requestID":"9ea79b73d012373db37dc4d46a70241b"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"466fcf0e-0dce-4c48-91c4-4aefff62a0c1"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"f39a3c99-29a6-454c-991b-0975357f461d"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/file","uuid":"4b8168d1-b541-4559-a27c-76dc89ea655a"}]},"level":"info","message":"Built pairwise service configurations","requestID":"9ea79b73d012373db37dc4d46a70241b"} 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/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"9ea79b73d012373db37dc4d46a70241b"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"7ad98e30-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3bc021c7541d74199fbde0ec7c2185a9"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":226,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:51Z"} gateway-1 | {"time_local":"03/Sep/2024:15:37:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf? 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":"3bc021c7541d74199fbde0ec7c2185a9"} device-1 | {"level":"info","message":"GET /devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf? 200 15ms","method":"GET","requestID":"3bc021c7541d74199fbde0ec7c2185a9","responseTime":15,"status":200,"url":"/devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf?"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":226,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.757332,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7ad98e30-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377871,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3MX0.YvYwgmQN8QSnx7kzOTVBAIgtTOe-Fs4SPqUEYVOmwSo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7ad98e30-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3MX0.YvYwgmQN8QSnx7kzOTVBAIgtTOe-Fs4SPqUEYVOmwSo","level":"info","message":"auth send jwt","requestID":"4b264cb2009236bc6b19ce54b084c18b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4b264cb2009236bc6b19ce54b084c18b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4b264cb2009236bc6b19ce54b084c18b"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":227,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":227,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.589485,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"4b264cb2009236bc6b19ce54b084c18b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377871,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3MX0.YvYwgmQN8QSnx7kzOTVBAIgtTOe-Fs4SPqUEYVOmwSo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4b264cb2009236bc6b19ce54b084c18b","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","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%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"44fbd1b9-dce1-4f63-921e-c70196a265ce","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377871.523585} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dd8f3adc-acb1-4185-b916-f778a4f57806","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377871.523828} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"7ad98e30-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:49.215675769Z"}]},"request_id":"dd6e5da6-3790-4806-a5aa-1c6f5855040d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377871.524942} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4b264cb2009236bc6b19ce54b084c18b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4b264cb2009236bc6b19ce54b084c18b"} gateway-1 | {"time_local":"03/Sep/2024:15:37:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf? 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":"4b264cb2009236bc6b19ce54b084c18b"} device-1 | {"level":"info","message":"GET /devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf? 200 17ms","method":"GET","requestID":"4b264cb2009236bc6b19ce54b084c18b","responseTime":17,"status":200,"url":"/devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"7ad98e30-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"7ad98e30-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/2b182c7f-9e49-4165-9c96-03bdf74a5e3b'","requestID":"7ad98e30-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/2b182c7f-9e49-4165-9c96-03bdf74a5e3b'","requestID":"7ad98e30-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"7ad98e30-6a0a-11ef-9b41-2363e6623fc8"} 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":"7ad98e30-6a0a-11ef-9b41-2363e6623fc8","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":"7ad98e30-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/2b182c7f-9e49-4165-9c96-03bdf74a5e3b","device":"6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","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":true} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/2b182c7f-9e49-4165-9c96-03bdf74a5e3b","device":"2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","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/578ff48d-2499-4881-8cc5-9b3702d0e1c7"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"9ea79b73d012373db37dc4d46a70241b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7ae32b20-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":228,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3fec3418-1ecb-45ce-b29a-b54ea3ace01d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377871.5747192} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":228,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.320363,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7ae32b20-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7ae32b20-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7ae32b20-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf/signaling 200 8ms","method":"POST","requestID":"7ae32b20-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7ae4b1c0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":229,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cbd5f0b9-d209-4471-b856-ae3b19ea0a72","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377871.584977} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":229,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.303412,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7ae4b1c0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7ae4b1c0-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7ae4b1c0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf/signaling 200 9ms","method":"POST","requestID":"7ae4b1c0-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf/signaling"} device-1 | {"device":"2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 6285650915132030618 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:6+f3\r\na=ice-pwd:qPSFk4CR3V4vLb04II2n9ln0\r\na=ice-options:trickle\r\na=fingerprint:sha-256 12:9C:4A:C5:4D:E7:60:4A:6E:D5:C4:30:AB:74:39:50:3B:BB:98:75:64:0B:E3:9F:00:C7:22:A8:AD:24:51:23\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 582108197123122366 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:f4BW\r\na=ice-pwd:2tGwR8pvrLh9I+1pD8zvmI9T\r\na=ice-options:trickle\r\na=fingerprint:sha-256 4C:85:2E:C6:45:31:5D:B2:0F:DA:ED:E5:40:F9:F5:09:74:72:2E:75:36:B4:09:80:69:11:ED:43:A3:E2:B6:93\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:914549139 1 udp 2113937151 bc0c617d-e554-4392-88c9-8d71eb197691.local 39793 typ host generation 0 ufrag f4BW network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2779334784 1 udp 1677729535 141.24.211.56 39793 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag f4BW network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","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/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf'"} device-1 | {"content":{"candidate":"candidate:377423436 1 udp 2113937151 302fa6a2-d93d-4a03-902b-7f8b332a14ce.local 48331 typ host generation 0 ufrag 6+f3 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2236917599 1 udp 1677729535 141.24.211.56 48331 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 6+f3 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","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/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf'"} device-1 | {"device":"6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","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/2b182c7f-9e49-4165-9c96-03bdf74a5e3b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2b182c7f-9e49-4165-9c96-03bdf74a5e3b","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} 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":"new","url":"http://localhost/devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/2b182c7f-9e49-4165-9c96-03bdf74a5e3b"}}},"level":"info","message":"received a callback","requestID":"f67bae89b81e25956019142456eac634"} device-1 | {"device":"2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f67bae89b81e25956019142456eac634","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f67bae89b81e25956019142456eac634","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} gateway-1 | {"time_local":"03/Sep/2024:15:37:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"f67bae89b81e25956019142456eac634"} device-1 | {"device":"2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"f67bae89b81e25956019142456eac634","responseTime":7,"status":200,"url":"/callbacks/experiment"} device-1 | {"data":{"peerconnection":"2b182c7f-9e49-4165-9c96-03bdf74a5e3b","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"2b182c7f-9e49-4165-9c96-03bdf74a5e3b","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/2b182c7f-9e49-4165-9c96-03bdf74a5e3b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2b182c7f-9e49-4165-9c96-03bdf74a5e3b","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5c8d986e8abca86383a65204dda39a37","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5c8d986e8abca86383a65204dda39a37","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":"connected","url":"http://localhost/devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/2b182c7f-9e49-4165-9c96-03bdf74a5e3b"}}},"level":"info","message":"received a callback","requestID":"5c8d986e8abca86383a65204dda39a37"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"7af309a0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":230,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2b182c7f-9e49-4165-9c96-03bdf74a5e3b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a3776d1e-b4c0-499d-b0e7-23fb83bd9c40","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377871.6794808} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":230,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.777027,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2b182c7f-9e49-4165-9c96-03bdf74a5e3b","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7af309a0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/2b182c7f-9e49-4165-9c96-03bdf74a5e3b","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":"7af309a0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"7af309a0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /peerconnections/2b182c7f-9e49-4165-9c96-03bdf74a5e3b 200 10ms","method":"GET","requestID":"7af309a0-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/peerconnections/2b182c7f-9e49-4165-9c96-03bdf74a5e3b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 36ms","method":"POST","requestID":"5c8d986e8abca86383a65204dda39a37","responseTime":36,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:37:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.040","http_referrer":"","http_user_agent":"node-fetch","requestID":"5c8d986e8abca86383a65204dda39a37"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7af7eba0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":231,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"351fd6bb-772b-4ab2-b65c-9f863d85f58a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377871.7116342} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":231,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.489737,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7af7eba0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"7af7eba0-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7af7eba0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf/signaling 200 11ms","method":"POST","requestID":"7af7eba0-6a0a-11ef-9b41-2363e6623fc8","responseTime":11,"status":200,"url":"/devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7af9e770-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":232,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b6f80d9d-e9c1-4c7f-a5cd-e36c92ce38fc","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377871.7249131} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":232,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.976087,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7af9e770-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"7af9e770-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7af9e770-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf/signaling 200 11ms","method":"POST","requestID":"7af9e770-6a0a-11ef-9b41-2363e6623fc8","responseTime":11,"status":200,"url":"/devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3MX0.YvYwgmQN8QSnx7kzOTVBAIgtTOe-Fs4SPqUEYVOmwSo","level":"info","message":"auth send jwt","requestID":"a0da20a02ef7fee38a88994bdba0c13e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a0da20a02ef7fee38a88994bdba0c13e","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/578ff48d-2499-4881-8cc5-9b3702d0e1c7","requestID":"a0da20a02ef7fee38a88994bdba0c13e"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":233,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":233,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.218169,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/578ff48d-2499-4881-8cc5-9b3702d0e1c7","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a0da20a02ef7fee38a88994bdba0c13e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/578ff48d-2499-4881-8cc5-9b3702d0e1c7","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377871,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3MX0.YvYwgmQN8QSnx7kzOTVBAIgtTOe-Fs4SPqUEYVOmwSo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a0da20a02ef7fee38a88994bdba0c13e","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/578ff48d-2499-4881-8cc5-9b3702d0e1c7","requestID":"a0da20a02ef7fee38a88994bdba0c13e"} gateway-1 | {"time_local":"03/Sep/2024:15:37:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/578ff48d-2499-4881-8cc5-9b3702d0e1c7 HTTP/1.1","status": "200","body_bytes_sent":"850","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a0da20a02ef7fee38a88994bdba0c13e"} experiment-1 | {"level":"info","message":"GET /experiments/578ff48d-2499-4881-8cc5-9b3702d0e1c7 200 17ms","method":"GET","requestID":"a0da20a02ef7fee38a88994bdba0c13e","responseTime":17,"status":200,"url":"/experiments/578ff48d-2499-4881-8cc5-9b3702d0e1c7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3MX0.YvYwgmQN8QSnx7kzOTVBAIgtTOe-Fs4SPqUEYVOmwSo","level":"info","message":"auth send jwt","requestID":"2f8f7d1ad6f9b577ceff851153e1dae0"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"2f8f7d1ad6f9b577ceff851153e1dae0","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/578ff48d-2499-4881-8cc5-9b3702d0e1c7","requestID":"2f8f7d1ad6f9b577ceff851153e1dae0"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":234,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":234,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.216675,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/578ff48d-2499-4881-8cc5-9b3702d0e1c7","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"2f8f7d1ad6f9b577ceff851153e1dae0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/578ff48d-2499-4881-8cc5-9b3702d0e1c7","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377871,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3MX0.YvYwgmQN8QSnx7kzOTVBAIgtTOe-Fs4SPqUEYVOmwSo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2f8f7d1ad6f9b577ceff851153e1dae0","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/578ff48d-2499-4881-8cc5-9b3702d0e1c7"},"level":"info","message":"Attempting to finish experiment","requestID":"2f8f7d1ad6f9b577ceff851153e1dae0"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"7b20d060-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":235,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":235,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.175215,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:51Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2b182c7f-9e49-4165-9c96-03bdf74a5e3b","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7b20d060-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:http://localhost/peerconnections/2b182c7f-9e49-4165-9c96-03bdf74a5e3b","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377871,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3MX0.YvYwgmQN8QSnx7kzOTVBAIgtTOe-Fs4SPqUEYVOmwSo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7b20d060-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/2b182c7f-9e49-4165-9c96-03bdf74a5e3b","device":"2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/2b182c7f-9e49-4165-9c96-03bdf74a5e3b","device":"6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","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/2b182c7f-9e49-4165-9c96-03bdf74a5e3b' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/2b182c7f-9e49-4165-9c96-03bdf74a5e3b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2b182c7f-9e49-4165-9c96-03bdf74a5e3b","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5359e03d3ab8b4427a9950c0b2ab604b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5359e03d3ab8b4427a9950c0b2ab604b","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e1ce99c7371f47dc372c19420be4080c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2b182c7f-9e49-4165-9c96-03bdf74a5e3b': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2b182c7f-9e49-4165-9c96-03bdf74a5e3b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"0fc63550-e964-4dce-8d92-66e1abe4ac74","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377872.002939} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"e1ce99c7371f47dc372c19420be4080c","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4b25b813-31c7-4d1f-b98e-ac56b96eab23","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377872.0034132} 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/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/2b182c7f-9e49-4165-9c96-03bdf74a5e3b"}}},"level":"info","message":"received a callback","requestID":"5359e03d3ab8b4427a9950c0b2ab604b"} 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":"connected","url":"http://localhost/devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/2b182c7f-9e49-4165-9c96-03bdf74a5e3b"}}},"level":"info","message":"received a callback","requestID":"e1ce99c7371f47dc372c19420be4080c"} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"7b20d060-6a0a-11ef-9b41-2363e6623fc8","responseTime":14,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"2b182c7f-9e49-4165-9c96-03bdf74a5e3b","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"7b20d060-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"DELETE /peerconnections/2b182c7f-9e49-4165-9c96-03bdf74a5e3b 204 53ms","method":"DELETE","requestID":"7b20d060-6a0a-11ef-9b41-2363e6623fc8","responseTime":53,"status":204,"url":"/peerconnections/2b182c7f-9e49-4165-9c96-03bdf74a5e3b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/578ff48d-2499-4881-8cc5-9b3702d0e1c7"},"level":"info","message":"Successfully finished experiment","requestID":"2f8f7d1ad6f9b577ceff851153e1dae0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7b2cde50-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":236,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:52Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"300753f3-d528-4b35-8e5d-6c9e6fbba6f1","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377872.058227} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":236,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.457064,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7b2cde50-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"7b2cde50-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7b2cde50-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf/signaling 200 13ms","method":"POST","requestID":"7b2cde50-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/devices/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf/signaling"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F578ff48d-2499-4881-8cc5-9b3702d0e1c7': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F578ff48d-2499-4881-8cc5-9b3702d0e1c7","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"54d0d547-9660-4c5a-9dcb-a3300e6b1566","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377872.0683649} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ef177a5b-874d-41ad-8e01-a107ea0bee14","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377872.0687478} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7b2f4f50-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"2f8f7d1ad6f9b577ceff851153e1dae0","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":237,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:52Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"519a2e7e-5f6f-4525-94de-876efc0b7c83","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377872.0755694} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":237,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.019202,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7b2f4f50-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"7b2f4f50-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7b2f4f50-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf/signaling 200 12ms","method":"POST","requestID":"7b2f4f50-6a0a-11ef-9b41-2363e6623fc8","responseTime":12,"status":200,"url":"/devices/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/578ff48d-2499-4881-8cc5-9b3702d0e1c7","requestID":"2f8f7d1ad6f9b577ceff851153e1dae0"} gateway-1 | {"time_local":"03/Sep/2024:15:37:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/578ff48d-2499-4881-8cc5-9b3702d0e1c7 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.184","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2f8f7d1ad6f9b577ceff851153e1dae0"} experiment-1 | {"level":"info","message":"DELETE /experiments/578ff48d-2499-4881-8cc5-9b3702d0e1c7 204 179ms","method":"DELETE","requestID":"2f8f7d1ad6f9b577ceff851153e1dae0","responseTime":179,"status":204,"url":"/experiments/578ff48d-2499-4881-8cc5-9b3702d0e1c7"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 132ms","method":"POST","requestID":"5359e03d3ab8b4427a9950c0b2ab604b","responseTime":132,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:37:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.138","http_referrer":"","http_user_agent":"node-fetch","requestID":"5359e03d3ab8b4427a9950c0b2ab604b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 131ms","method":"POST","requestID":"e1ce99c7371f47dc372c19420be4080c","responseTime":131,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3Mn0.T5sHHSdrZcI2k_NB-XK3IgPa62fLdTtssKXNk1Um-Q4","level":"info","message":"auth send jwt","requestID":"b0da2a3da64e8aa31f7d4103b5a12683"} gateway-1 | {"time_local":"03/Sep/2024:15:37:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.139","http_referrer":"","http_user_agent":"node-fetch","requestID":"e1ce99c7371f47dc372c19420be4080c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b0da2a3da64e8aa31f7d4103b5a12683","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"b0da2a3da64e8aa31f7d4103b5a12683"} gateway-1 | {"time_local":"03/Sep/2024:15:37:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2629","request_time":"0.912","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"3eb67cca5e917cd494444c1c96668e58"} gateway-1 | {"time_local":"03/Sep/2024:15:37:52 +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.895","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"559ed33e2ea773a6e62d2dcb19d56e9b"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":238,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:52Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":238,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.903031,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:52Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"b0da2a3da64e8aa31f7d4103b5a12683","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377872,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3Mn0.T5sHHSdrZcI2k_NB-XK3IgPa62fLdTtssKXNk1Um-Q4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b0da2a3da64e8aa31f7d4103b5a12683","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/2cd5ba2a-b880-4e6d-9bf0-8afa210aa6bf' 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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"46e5afba-f079-4297-b4e7-01b5efc64f88","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377872.156673} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b0da2a3da64e8aa31f7d4103b5a12683","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f3ec4531-5f18-4ae1-9869-ee5fa5b30718","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377872.1614223} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"b0da2a3da64e8aa31f7d4103b5a12683","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/6a896ce5-a1f6-4546-b0e8-b460bbd72bbf' closed"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"6d41bfef-e1b2-42bb-8808-68232f054dd7","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377872.1735725} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"adb3e3b0-2ce0-4d5e-bc4b-44406c1c65eb","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377872.1737463} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"b0da2a3da64e8aa31f7d4103b5a12683","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:52.173557456Z"}]},"request_id":"9932b32b-1985-4e50-8cce-e5d867901a84","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377872.1778486} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b0da2a3da64e8aa31f7d4103b5a12683","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b0da2a3da64e8aa31f7d4103b5a12683"} gateway-1 | {"time_local":"03/Sep/2024:15:37:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.042","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b0da2a3da64e8aa31f7d4103b5a12683"} device-1 | {"level":"info","message":"POST /devices? 201 37ms","method":"POST","requestID":"b0da2a3da64e8aa31f7d4103b5a12683","responseTime":37,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3Mn0.T5sHHSdrZcI2k_NB-XK3IgPa62fLdTtssKXNk1Um-Q4","level":"info","message":"auth send jwt","requestID":"165850c3f9b4729a51a0c8b95115d26f"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"165850c3f9b4729a51a0c8b95115d26f","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"165850c3f9b4729a51a0c8b95115d26f"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":239,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:52Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":239,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.633887,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:52Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"165850c3f9b4729a51a0c8b95115d26f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377872,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3Mn0.T5sHHSdrZcI2k_NB-XK3IgPa62fLdTtssKXNk1Um-Q4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"165850c3f9b4729a51a0c8b95115d26f","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F87fa3270-4977-404f-8846-e562375c06e0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c95c7807-ef62-43b1-ab5a-030ba9820473","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377872.19933} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"165850c3f9b4729a51a0c8b95115d26f","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ba807388-cb9e-417d-9bb1-1e3fdd01f80b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377872.2037265} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"165850c3f9b4729a51a0c8b95115d26f","responseTime":2,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F87fa3270-4977-404f-8846-e562375c06e0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"d49ef264-f909-443f-afab-b1a8592b22b4","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377872.219528} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6f88447f-4d6c-4710-aff8-44c335b0e50a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377872.219661} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"165850c3f9b4729a51a0c8b95115d26f","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F87fa3270-4977-404f-8846-e562375c06e0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F87fa3270-4977-404f-8846-e562375c06e0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:52.219511795Z"}]},"request_id":"1f46ef6b-bdcd-468b-966a-e8adfbb942be","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377872.2235992} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"165850c3f9b4729a51a0c8b95115d26f","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"165850c3f9b4729a51a0c8b95115d26f"} gateway-1 | {"time_local":"03/Sep/2024:15:37:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"165850c3f9b4729a51a0c8b95115d26f"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"165850c3f9b4729a51a0c8b95115d26f","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3Mn0.T5sHHSdrZcI2k_NB-XK3IgPa62fLdTtssKXNk1Um-Q4","level":"info","message":"auth send jwt","requestID":"b76336c3074b5dd6fdafd86f9b174a90"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b76336c3074b5dd6fdafd86f9b174a90","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b76336c3074b5dd6fdafd86f9b174a90"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":240,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:52Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":240,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.183928,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:52Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/87fa3270-4977-404f-8846-e562375c06e0","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"b76336c3074b5dd6fdafd86f9b174a90","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/87fa3270-4977-404f-8846-e562375c06e0","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377872,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3Mn0.T5sHHSdrZcI2k_NB-XK3IgPa62fLdTtssKXNk1Um-Q4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b76336c3074b5dd6fdafd86f9b174a90","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F87fa3270-4977-404f-8846-e562375c06e0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F87fa3270-4977-404f-8846-e562375c06e0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:52.219511795Z"}]},"request_id":"8890e48e-f6cd-4c01-9840-a3aa82dab724","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377872.691075} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b76336c3074b5dd6fdafd86f9b174a90","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"540cef96-a6d1-4ca7-8e5c-5255806fe802","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377872.697359} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"b76336c3074b5dd6fdafd86f9b174a90","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F87fa3270-4977-404f-8846-e562375c06e0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F87fa3270-4977-404f-8846-e562375c06e0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:52.219511795Z"}]},"request_id":"ff63e9b8-c7ab-4d94-9e2f-35d8abdd2369","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377872.7107377} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b76336c3074b5dd6fdafd86f9b174a90","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b76336c3074b5dd6fdafd86f9b174a90"} gateway-1 | {"time_local":"03/Sep/2024:15:37:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/87fa3270-4977-404f-8846-e562375c06e0 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.043","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"b76336c3074b5dd6fdafd86f9b174a90"} device-1 | {"level":"info","message":"PATCH /devices/87fa3270-4977-404f-8846-e562375c06e0 200 37ms","method":"PATCH","requestID":"b76336c3074b5dd6fdafd86f9b174a90","responseTime":37,"status":200,"url":"/devices/87fa3270-4977-404f-8846-e562375c06e0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3Mn0.T5sHHSdrZcI2k_NB-XK3IgPa62fLdTtssKXNk1Um-Q4","level":"info","message":"auth send jwt","requestID":"f1e3ca5c94b10f293194cf2d22619b20"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"f1e3ca5c94b10f293194cf2d22619b20","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f1e3ca5c94b10f293194cf2d22619b20"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":241,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:52Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":241,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.320859,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:52Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/87fa3270-4977-404f-8846-e562375c06e0","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"f1e3ca5c94b10f293194cf2d22619b20","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/87fa3270-4977-404f-8846-e562375c06e0","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377872,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3Mn0.T5sHHSdrZcI2k_NB-XK3IgPa62fLdTtssKXNk1Um-Q4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f1e3ca5c94b10f293194cf2d22619b20","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f1e3ca5c94b10f293194cf2d22619b20"} gateway-1 | {"time_local":"03/Sep/2024:15:37:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/87fa3270-4977-404f-8846-e562375c06e0/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.032","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"f1e3ca5c94b10f293194cf2d22619b20"} device-1 | {"level":"info","message":"POST /devices/87fa3270-4977-404f-8846-e562375c06e0/websocket 200 25ms","method":"POST","requestID":"f1e3ca5c94b10f293194cf2d22619b20","responseTime":25,"status":200,"url":"/devices/87fa3270-4977-404f-8846-e562375c06e0/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/87fa3270-4977-404f-8846-e562375c06e0' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"062fb0d7ce99a5ad1bf6b7d8d9becee4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"062fb0d7ce99a5ad1bf6b7d8d9becee4","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"03/Sep/2024:15:37:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb/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":"062fb0d7ce99a5ad1bf6b7d8d9becee4"} device-1 | {"level":"info","message":"OPTIONS /devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb/websocket 200 1ms","method":"OPTIONS","requestID":"062fb0d7ce99a5ad1bf6b7d8d9becee4","responseTime":1,"status":200,"url":"/devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3NH0.gEwZMBwe6kUE7tg4w1g-GmsbDIKGI5ZgCArU2ijIkBg","level":"info","message":"auth send jwt","requestID":"8fe6d6b3899b71de26664aa056d0ef03"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"8fe6d6b3899b71de26664aa056d0ef03","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"8fe6d6b3899b71de26664aa056d0ef03"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":242,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:54Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":242,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.298263,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:54Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8fe6d6b3899b71de26664aa056d0ef03","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377874,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3NH0.gEwZMBwe6kUE7tg4w1g-GmsbDIKGI5ZgCArU2ijIkBg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8fe6d6b3899b71de26664aa056d0ef03","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"8fe6d6b3899b71de26664aa056d0ef03"} gateway-1 | {"time_local":"03/Sep/2024:15:37:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb/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":"8fe6d6b3899b71de26664aa056d0ef03"} device-1 | {"level":"info","message":"POST /devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb/websocket 200 24ms","method":"POST","requestID":"8fe6d6b3899b71de26664aa056d0ef03","responseTime":24,"status":200,"url":"/devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3NH0.gEwZMBwe6kUE7tg4w1g-GmsbDIKGI5ZgCArU2ijIkBg","level":"info","message":"auth send jwt","requestID":"99ef3516754dea842dafdcd77ec986aa"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"99ef3516754dea842dafdcd77ec986aa","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"99ef3516754dea842dafdcd77ec986aa"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":243,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:54Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":243,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.314028,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"99ef3516754dea842dafdcd77ec986aa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377874,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3NH0.gEwZMBwe6kUE7tg4w1g-GmsbDIKGI5ZgCArU2ijIkBg"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"99ef3516754dea842dafdcd77ec986aa","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:52.173557456Z"}]},"request_id":"8538258f-3e28-46a7-9a66-3614167c2d5d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377874.298442} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"99ef3516754dea842dafdcd77ec986aa","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"99ef3516754dea842dafdcd77ec986aa"} gateway-1 | {"time_local":"03/Sep/2024:15:37:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb? 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":"99ef3516754dea842dafdcd77ec986aa"} device-1 | {"level":"info","message":"GET /devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb? 200 20ms","method":"GET","requestID":"99ef3516754dea842dafdcd77ec986aa","responseTime":20,"status":200,"url":"/devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3NH0.gEwZMBwe6kUE7tg4w1g-GmsbDIKGI5ZgCArU2ijIkBg","level":"info","message":"auth send jwt","requestID":"f3987c2883e14f4d674991ec28f75e60"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f3987c2883e14f4d674991ec28f75e60","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f3987c2883e14f4d674991ec28f75e60"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":244,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:54Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":244,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.257103,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/87fa3270-4977-404f-8846-e562375c06e0","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"f3987c2883e14f4d674991ec28f75e60","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/87fa3270-4977-404f-8846-e562375c06e0","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377874,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3NH0.gEwZMBwe6kUE7tg4w1g-GmsbDIKGI5ZgCArU2ijIkBg"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f3987c2883e14f4d674991ec28f75e60","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F87fa3270-4977-404f-8846-e562375c06e0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F87fa3270-4977-404f-8846-e562375c06e0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:52.219511795Z"}]},"request_id":"419bdb97-812d-43e4-b009-8e5afeb74050","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377874.3296087} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f3987c2883e14f4d674991ec28f75e60","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f3987c2883e14f4d674991ec28f75e60"} gateway-1 | {"time_local":"03/Sep/2024:15:37:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/87fa3270-4977-404f-8846-e562375c06e0? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.031","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f3987c2883e14f4d674991ec28f75e60"} device-1 | {"level":"info","message":"GET /devices/87fa3270-4977-404f-8846-e562375c06e0? 200 24ms","method":"GET","requestID":"f3987c2883e14f4d674991ec28f75e60","responseTime":24,"status":200,"url":"/devices/87fa3270-4977-404f-8846-e562375c06e0?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3NH0.gEwZMBwe6kUE7tg4w1g-GmsbDIKGI5ZgCArU2ijIkBg","level":"info","message":"auth send jwt","requestID":"7c1fb35488e0aac9ed82e430419b25ee"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"7c1fb35488e0aac9ed82e430419b25ee","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"7c1fb35488e0aac9ed82e430419b25ee"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":245,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:54Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":245,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.042883,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:54Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7c1fb35488e0aac9ed82e430419b25ee","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377874,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3NH0.gEwZMBwe6kUE7tg4w1g-GmsbDIKGI5ZgCArU2ijIkBg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7c1fb35488e0aac9ed82e430419b25ee","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5776d9ec-d297-4036-b9fe-d4a45a1c929e"},"level":"info","message":"Attempting to run experiment","requestID":"7c1fb35488e0aac9ed82e430419b25ee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5776d9ec-d297-4036-b9fe-d4a45a1c929e"},"level":"info","message":"Attempting to book experiment","requestID":"7c1fb35488e0aac9ed82e430419b25ee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5776d9ec-d297-4036-b9fe-d4a45a1c929e"},"level":"info","message":"Successfully booked experiment","requestID":"7c1fb35488e0aac9ed82e430419b25ee"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7c90b410-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7c910230-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":246,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:54Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":246,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.004707,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:54Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":247,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7c90b410-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377874,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3NH0.gEwZMBwe6kUE7tg4w1g-GmsbDIKGI5ZgCArU2ijIkBg"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"7c90b410-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":247,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.097392,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/87fa3270-4977-404f-8846-e562375c06e0","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7c910230-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/87fa3270-4977-404f-8846-e562375c06e0","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377874,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3NH0.gEwZMBwe6kUE7tg4w1g-GmsbDIKGI5ZgCArU2ijIkBg"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"7c910230-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:52.173557456Z"}]},"request_id":"2a9047ee-6414-457a-a95f-804e80099371","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377874.3995004} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"7c90b410-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F87fa3270-4977-404f-8846-e562375c06e0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F87fa3270-4977-404f-8846-e562375c06e0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:52.219511795Z"}]},"request_id":"eede7f8d-48fb-4954-b435-1b3d00062a00","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377874.4010885} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7c910230-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7c90b410-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb? 200 21ms","method":"GET","requestID":"7c90b410-6a0a-11ef-9b41-2363e6623fc8","responseTime":21,"status":200,"url":"/devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7c910230-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/87fa3270-4977-404f-8846-e562375c06e0? 200 20ms","method":"GET","requestID":"7c910230-6a0a-11ef-9b41-2363e6623fc8","responseTime":20,"status":200,"url":"/devices/87fa3270-4977-404f-8846-e562375c06e0?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5776d9ec-d297-4036-b9fe-d4a45a1c929e"},"level":"info","message":"Setting up experiment","requestID":"7c1fb35488e0aac9ed82e430419b25ee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5776d9ec-d297-4036-b9fe-d4a45a1c929e"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"7c1fb35488e0aac9ed82e430419b25ee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5776d9ec-d297-4036-b9fe-d4a45a1c929e"},"level":"info","message":"Successfully locked booking for experiment","requestID":"7c1fb35488e0aac9ed82e430419b25ee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5776d9ec-d297-4036-b9fe-d4a45a1c929e"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"7c1fb35488e0aac9ed82e430419b25ee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5776d9ec-d297-4036-b9fe-d4a45a1c929e"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"7c1fb35488e0aac9ed82e430419b25ee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5776d9ec-d297-4036-b9fe-d4a45a1c929e"},"level":"info","message":"Attempting to update booking for experiment","requestID":"7c1fb35488e0aac9ed82e430419b25ee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5776d9ec-d297-4036-b9fe-d4a45a1c929e"},"level":"info","message":"Successfully updated booking for experiment","requestID":"7c1fb35488e0aac9ed82e430419b25ee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5776d9ec-d297-4036-b9fe-d4a45a1c929e"},"level":"info","message":"Successfully set up experiment","requestID":"7c1fb35488e0aac9ed82e430419b25ee"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7c9cc200-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7c9d1020-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7c9d8550-6a0a-11ef-9b41-2363e6623fc8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5776d9ec-d297-4036-b9fe-d4a45a1c929e"},"level":"info","message":"Successfully running experiment","requestID":"7c1fb35488e0aac9ed82e430419b25ee"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":248,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:54Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":248,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.75978,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:54Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":249,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7c9cc200-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377874,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3NH0.gEwZMBwe6kUE7tg4w1g-GmsbDIKGI5ZgCArU2ijIkBg"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"7c9cc200-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":249,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.702073,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:54Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":250,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/87fa3270-4977-404f-8846-e562375c06e0","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7c9d1020-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/87fa3270-4977-404f-8846-e562375c06e0","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377874,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3NH0.gEwZMBwe6kUE7tg4w1g-GmsbDIKGI5ZgCArU2ijIkBg"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"7c9d1020-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"23a4fc2f-79b0-4923-97f1-f29d12e2a7e6","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377874.477938} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":250,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.206208,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7c9d8550-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","object_type":"device","rebac_allow":false,"scope_allow":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":"7c9d8550-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:52.173557456Z"}]},"request_id":"99b008f9-9065-4116-9607-4e20aec9fadf","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377874.4815147} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F87fa3270-4977-404f-8846-e562375c06e0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F87fa3270-4977-404f-8846-e562375c06e0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:52.219511795Z"}]},"request_id":"3810fc56-19f4-45e8-b86c-e6181bd67faf","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377874.4828665} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"7c9cc200-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"7c9d1020-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7c9d8550-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb/signaling 200 24ms","method":"POST","requestID":"7c9d8550-6a0a-11ef-9b41-2363e6623fc8","responseTime":24,"status":200,"url":"/devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7c9cc200-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb? 200 31ms","method":"GET","requestID":"7c9cc200-6a0a-11ef-9b41-2363e6623fc8","responseTime":31,"status":200,"url":"/devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7c9d1020-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/87fa3270-4977-404f-8846-e562375c06e0? 200 31ms","method":"GET","requestID":"7c9d1020-6a0a-11ef-9b41-2363e6623fc8","responseTime":31,"status":200,"url":"/devices/87fa3270-4977-404f-8846-e562375c06e0?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7ca1f220-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5776d9ec-d297-4036-b9fe-d4a45a1c929e#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5776d9ec-d297-4036-b9fe-d4a45a1c929e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"20d48d15-c576-4bfe-b95e-b7a8e99c2999","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377874.4986248} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e5f5e495-e01d-49d9-93e9-8727d8f81117","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377874.4990954} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"7c1fb35488e0aac9ed82e430419b25ee","responseTime":24,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7ca28e60-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":251,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:54Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":252,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:54Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F87fa3270-4977-404f-8846-e562375c06e0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"417aa2b5-d795-4cbf-9eca-373ca828a34e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377874.5066705} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":251,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.718895,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/87fa3270-4977-404f-8846-e562375c06e0","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7ca1f220-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/87fa3270-4977-404f-8846-e562375c06e0","object_type":"device","rebac_allow":false,"scope_allow":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":"7ca1f220-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/5776d9ec-d297-4036-b9fe-d4a45a1c929e","user":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"7c1fb35488e0aac9ed82e430419b25ee"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"73b7143f-e618-439b-9e5e-6c17ef61cdcb","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377874.5093565} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":252,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.930929,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:54Z"} gateway-1 | {"time_local":"03/Sep/2024:15:37:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"781","request_time":"0.172","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7c1fb35488e0aac9ed82e430419b25ee"} experiment-1 | {"level":"info","message":"POST /experiments? 201 165ms","method":"POST","requestID":"7c1fb35488e0aac9ed82e430419b25ee","responseTime":165,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7ca28e60-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","object_type":"device","rebac_allow":false,"scope_allow":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":"7ca28e60-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7ca1f220-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/87fa3270-4977-404f-8846-e562375c06e0/signaling 200 16ms","method":"POST","requestID":"7ca1f220-6a0a-11ef-9b41-2363e6623fc8","responseTime":16,"status":200,"url":"/devices/87fa3270-4977-404f-8846-e562375c06e0/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3NH0.gEwZMBwe6kUE7tg4w1g-GmsbDIKGI5ZgCArU2ijIkBg","level":"info","message":"auth send jwt","requestID":"31e2af92bc5c8ef8992b97a0450cbd0e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7ca28e60-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb/signaling 200 18ms","method":"POST","requestID":"7ca28e60-6a0a-11ef-9b41-2363e6623fc8","responseTime":18,"status":200,"url":"/devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb/signaling"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"31e2af92bc5c8ef8992b97a0450cbd0e","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"31e2af92bc5c8ef8992b97a0450cbd0e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7ca5c2b0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":253,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:54Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":253,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.971998,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:54Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":254,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"31e2af92bc5c8ef8992b97a0450cbd0e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377874,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3NH0.gEwZMBwe6kUE7tg4w1g-GmsbDIKGI5ZgCArU2ijIkBg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"31e2af92bc5c8ef8992b97a0450cbd0e","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F87fa3270-4977-404f-8846-e562375c06e0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"51d2af7c-3e01-4132-8675-5b1f87b76084","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377874.5287924} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":254,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.946344,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/87fa3270-4977-404f-8846-e562375c06e0","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7ca5c2b0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/87fa3270-4977-404f-8846-e562375c06e0","object_type":"device","rebac_allow":false,"scope_allow":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":"7ca5c2b0-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:52.173557456Z"}]},"request_id":"697457d4-1827-48ed-8006-6068950bba9e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377874.531863} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"31e2af92bc5c8ef8992b97a0450cbd0e","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7ca5c2b0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/87fa3270-4977-404f-8846-e562375c06e0/signaling 200 15ms","method":"POST","requestID":"7ca5c2b0-6a0a-11ef-9b41-2363e6623fc8","responseTime":15,"status":200,"url":"/devices/87fa3270-4977-404f-8846-e562375c06e0/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"31e2af92bc5c8ef8992b97a0450cbd0e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5776d9ec-d297-4036-b9fe-d4a45a1c929e"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"7c1fb35488e0aac9ed82e430419b25ee"} device-1 | {"level":"info","message":"GET /devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb? 200 18ms","method":"GET","requestID":"31e2af92bc5c8ef8992b97a0450cbd0e","responseTime":18,"status":200,"url":"/devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5776d9ec-d297-4036-b9fe-d4a45a1c929e"},"level":"info","message":"Building connection plan","requestID":"7c1fb35488e0aac9ed82e430419b25ee"} gateway-1 | {"time_local":"03/Sep/2024:15:37:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb? 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":"31e2af92bc5c8ef8992b97a0450cbd0e"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"1fbcc629-08e4-47fc-98d5-83692e650a85"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"c6566c6d-1291-4102-a79e-46431c7086c9"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/file","uuid":"848c8e29-751e-4cc9-9907-c2d80c576779"}]},"level":"info","message":"Built pairwise service configurations","requestID":"7c1fb35488e0aac9ed82e430419b25ee"} 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/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/87fa3270-4977-404f-8846-e562375c06e0"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"7c1fb35488e0aac9ed82e430419b25ee"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"7ca8cff0-6a0a-11ef-9b41-2363e6623fc8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3NH0.gEwZMBwe6kUE7tg4w1g-GmsbDIKGI5ZgCArU2ijIkBg","level":"info","message":"auth send jwt","requestID":"d9ce390d6f88f33685ce30a92206636e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d9ce390d6f88f33685ce30a92206636e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d9ce390d6f88f33685ce30a92206636e"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":255,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:54Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":255,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.68319,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:54Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7ca8cff0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377874,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3NH0.gEwZMBwe6kUE7tg4w1g-GmsbDIKGI5ZgCArU2ijIkBg"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"7ca8cff0-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":256,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:54Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":256,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.940163,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/87fa3270-4977-404f-8846-e562375c06e0","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"d9ce390d6f88f33685ce30a92206636e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/87fa3270-4977-404f-8846-e562375c06e0","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377874,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3NH0.gEwZMBwe6kUE7tg4w1g-GmsbDIKGI5ZgCArU2ijIkBg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d9ce390d6f88f33685ce30a92206636e","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F87fa3270-4977-404f-8846-e562375c06e0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F87fa3270-4977-404f-8846-e562375c06e0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:52.219511795Z"}]},"request_id":"55053bbc-e9f6-4d34-a8e3-1a124362dca0","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377874.5610638} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d9ce390d6f88f33685ce30a92206636e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d9ce390d6f88f33685ce30a92206636e"} gateway-1 | {"time_local":"03/Sep/2024:15:37:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/87fa3270-4977-404f-8846-e562375c06e0? 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":"d9ce390d6f88f33685ce30a92206636e"} device-1 | {"level":"info","message":"GET /devices/87fa3270-4977-404f-8846-e562375c06e0? 200 20ms","method":"GET","requestID":"d9ce390d6f88f33685ce30a92206636e","responseTime":20,"status":200,"url":"/devices/87fa3270-4977-404f-8846-e562375c06e0?"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","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%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"33489ac2-1a8c-4a82-ab70-fa2f20bde3f1","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377874.5633607} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b646b8cd-76d8-4f89-bace-1d9eabecdd32","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377874.5634053} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"7ca8cff0-6a0a-11ef-9b41-2363e6623fc8","responseTime":14,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"7ca8cff0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"7ca8cff0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/0487d1d1-4175-4c7c-9574-0e6471187b84'","requestID":"7ca8cff0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/0487d1d1-4175-4c7c-9574-0e6471187b84'","requestID":"7ca8cff0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"7ca8cff0-6a0a-11ef-9b41-2363e6623fc8"} 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":"7ca8cff0-6a0a-11ef-9b41-2363e6623fc8","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":"7ca8cff0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/0487d1d1-4175-4c7c-9574-0e6471187b84","device":"2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","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/5776d9ec-d297-4036-b9fe-d4a45a1c929e"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"7c1fb35488e0aac9ed82e430419b25ee"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7cb37e50-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":257,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:54Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3e8f6c8f-58e4-4b12-8345-7194e800c3ff","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377874.617293} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":257,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.633744,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7cb37e50-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7cb37e50-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7cb37e50-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb/signaling 200 8ms","method":"POST","requestID":"7cb37e50-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7cb52c00-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":258,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:54Z"} device-1 | {"device":"2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F87fa3270-4977-404f-8846-e562375c06e0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5f25228f-6a04-4426-81dd-e259f5e18e07","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377874.629986} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":258,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.683243,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/87fa3270-4977-404f-8846-e562375c06e0","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7cb52c00-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/87fa3270-4977-404f-8846-e562375c06e0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7cb52c00-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7cb52c00-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/87fa3270-4977-404f-8846-e562375c06e0/signaling 200 10ms","method":"POST","requestID":"7cb52c00-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/devices/87fa3270-4977-404f-8846-e562375c06e0/signaling"} device-1 | {"device":"87fa3270-4977-404f-8846-e562375c06e0","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":"0487d1d1-4175-4c7c-9574-0e6471187b84","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 3491384204906389512 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:hcJe\r\na=ice-pwd:jJbuQ8B3qMi4nRQZOP42hZiu\r\na=ice-options:trickle\r\na=fingerprint:sha-256 2B:FB:D6:81:CF:7A:46:7A:19:2F:8B:DF:DA:B4:99:13:BA:A4:50:D0:E5:6C:1C:01:87:92:02:BD:BD:3B:F2:A5\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:145733469 1 udp 2113937151 f5f93c3b-b1e6-4e27-a5bd-072a7a627a15.local 57078 typ host generation 0 ufrag hcJe network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"87fa3270-4977-404f-8846-e562375c06e0","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":"87fa3270-4977-404f-8846-e562375c06e0","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":"87fa3270-4977-404f-8846-e562375c06e0","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/0487d1d1-4175-4c7c-9574-0e6471187b84' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0487d1d1-4175-4c7c-9574-0e6471187b84","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"candidate":"candidate:2357386530 1 udp 1677729535 141.24.211.56 57078 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag hcJe network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bd3f6b6df8aa9700986cef3ad00d25ef","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"bd3f6b6df8aa9700986cef3ad00d25ef","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","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/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb'"} 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/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/87fa3270-4977-404f-8846-e562375c06e0"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/0487d1d1-4175-4c7c-9574-0e6471187b84"}}},"level":"info","message":"received a callback","requestID":"bd3f6b6df8aa9700986cef3ad00d25ef"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"bd3f6b6df8aa9700986cef3ad00d25ef","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:37:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"bd3f6b6df8aa9700986cef3ad00d25ef"} device-1 | {"data":{"peerconnection":"0487d1d1-4175-4c7c-9574-0e6471187b84","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"87fa3270-4977-404f-8846-e562375c06e0","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":"2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"87fa3270-4977-404f-8846-e562375c06e0","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":"0487d1d1-4175-4c7c-9574-0e6471187b84","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","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/0487d1d1-4175-4c7c-9574-0e6471187b84' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0487d1d1-4175-4c7c-9574-0e6471187b84","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"dd63f3334dce8a79240b7afa85a8ddbc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/87fa3270-4977-404f-8846-e562375c06e0"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/0487d1d1-4175-4c7c-9574-0e6471187b84"}}},"level":"info","message":"received a callback","requestID":"dd63f3334dce8a79240b7afa85a8ddbc"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"dd63f3334dce8a79240b7afa85a8ddbc","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"7df3c680-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":259,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:56Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0487d1d1-4175-4c7c-9574-0e6471187b84","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4cf752a2-85dd-44de-bdb5-5645193a15a1","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377876.7179868} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":259,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.709209,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/0487d1d1-4175-4c7c-9574-0e6471187b84","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7df3c680-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/0487d1d1-4175-4c7c-9574-0e6471187b84","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":"7df3c680-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"7df3c680-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /peerconnections/0487d1d1-4175-4c7c-9574-0e6471187b84 200 11ms","method":"GET","requestID":"7df3c680-6a0a-11ef-9b41-2363e6623fc8","responseTime":11,"status":200,"url":"/peerconnections/0487d1d1-4175-4c7c-9574-0e6471187b84"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 43ms","method":"POST","requestID":"dd63f3334dce8a79240b7afa85a8ddbc","responseTime":43,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:37:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch","requestID":"dd63f3334dce8a79240b7afa85a8ddbc"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7df944c0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":260,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:56Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"68a22172-8e1f-41ee-ba92-1f861b1b69a0","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377876.753163} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":260,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.509342,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7df944c0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7df944c0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7df944c0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb/signaling 200 10ms","method":"POST","requestID":"7df944c0-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7dfb1980-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":261,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:56Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F87fa3270-4977-404f-8846-e562375c06e0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c9fd006d-0312-4028-9047-aa682f454e73","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377876.7647414} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":261,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.990997,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/87fa3270-4977-404f-8846-e562375c06e0","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7dfb1980-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/87fa3270-4977-404f-8846-e562375c06e0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"7dfb1980-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7dfb1980-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/87fa3270-4977-404f-8846-e562375c06e0/signaling 200 10ms","method":"POST","requestID":"7dfb1980-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/devices/87fa3270-4977-404f-8846-e562375c06e0/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3Nn0.PmDW9SUxT_FNTm_C2DJgFqqZ-SkTJNRTQj98yVWDOKE","level":"info","message":"auth send jwt","requestID":"b51640c2f8586c98ac1a7fc4938ecc02"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b51640c2f8586c98ac1a7fc4938ecc02","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/5776d9ec-d297-4036-b9fe-d4a45a1c929e","requestID":"b51640c2f8586c98ac1a7fc4938ecc02"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":262,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:56Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":262,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.189813,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5776d9ec-d297-4036-b9fe-d4a45a1c929e","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"b51640c2f8586c98ac1a7fc4938ecc02","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/5776d9ec-d297-4036-b9fe-d4a45a1c929e","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377876,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3Nn0.PmDW9SUxT_FNTm_C2DJgFqqZ-SkTJNRTQj98yVWDOKE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b51640c2f8586c98ac1a7fc4938ecc02","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/5776d9ec-d297-4036-b9fe-d4a45a1c929e","requestID":"b51640c2f8586c98ac1a7fc4938ecc02"} gateway-1 | {"time_local":"03/Sep/2024:15:37:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/5776d9ec-d297-4036-b9fe-d4a45a1c929e HTTP/1.1","status": "200","body_bytes_sent":"854","request_time":"0.028","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b51640c2f8586c98ac1a7fc4938ecc02"} experiment-1 | {"level":"info","message":"GET /experiments/5776d9ec-d297-4036-b9fe-d4a45a1c929e 200 21ms","method":"GET","requestID":"b51640c2f8586c98ac1a7fc4938ecc02","responseTime":21,"status":200,"url":"/experiments/5776d9ec-d297-4036-b9fe-d4a45a1c929e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3N30.c9fRkKrWeQMRyfteCYISnHRpK9PMqClQDvyFhFK8i0Q","level":"info","message":"auth send jwt","requestID":"155fcdb624e0e267a401cb0f2c7785df"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"155fcdb624e0e267a401cb0f2c7785df","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/5776d9ec-d297-4036-b9fe-d4a45a1c929e","requestID":"155fcdb624e0e267a401cb0f2c7785df"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":263,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:57Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":263,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.253161,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:57Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5776d9ec-d297-4036-b9fe-d4a45a1c929e","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"155fcdb624e0e267a401cb0f2c7785df","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/5776d9ec-d297-4036-b9fe-d4a45a1c929e","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377877,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3N30.c9fRkKrWeQMRyfteCYISnHRpK9PMqClQDvyFhFK8i0Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"155fcdb624e0e267a401cb0f2c7785df","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5776d9ec-d297-4036-b9fe-d4a45a1c929e"},"level":"info","message":"Attempting to finish experiment","requestID":"155fcdb624e0e267a401cb0f2c7785df"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"7e2584e0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":264,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:57Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":264,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":2.401876,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:57Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/0487d1d1-4175-4c7c-9574-0e6471187b84","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7e2584e0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:http://localhost/peerconnections/0487d1d1-4175-4c7c-9574-0e6471187b84","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377877,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3N30.c9fRkKrWeQMRyfteCYISnHRpK9PMqClQDvyFhFK8i0Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"7e2584e0-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/0487d1d1-4175-4c7c-9574-0e6471187b84","device":"2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"87fa3270-4977-404f-8846-e562375c06e0","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":"87fa3270-4977-404f-8846-e562375c06e0","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":"87fa3270-4977-404f-8846-e562375c06e0","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/0487d1d1-4175-4c7c-9574-0e6471187b84' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/0487d1d1-4175-4c7c-9574-0e6471187b84' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0487d1d1-4175-4c7c-9574-0e6471187b84","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0487d1d1-4175-4c7c-9574-0e6471187b84': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0487d1d1-4175-4c7c-9574-0e6471187b84","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"28626df4-30d0-401d-b5df-c1ba656e8a93","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377877.064484} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c831cec0-a966-4792-b2ca-51748bffe87e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377877.0648189} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"34d2307edc5de68de8ca0094976308c1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"34d2307edc5de68de8ca0094976308c1","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"7e2584e0-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"892d2f89b10eac739a3f1d4493cc7cda","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"892d2f89b10eac739a3f1d4493cc7cda","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":"connected","url":"http://localhost/devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/87fa3270-4977-404f-8846-e562375c06e0"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/0487d1d1-4175-4c7c-9574-0e6471187b84"}}},"level":"info","message":"received a callback","requestID":"34d2307edc5de68de8ca0094976308c1"} 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/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/87fa3270-4977-404f-8846-e562375c06e0"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/0487d1d1-4175-4c7c-9574-0e6471187b84"}}},"level":"info","message":"received a callback","requestID":"892d2f89b10eac739a3f1d4493cc7cda"} device-1 | {"data":{"peerconnection":"0487d1d1-4175-4c7c-9574-0e6471187b84","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"7e2584e0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"DELETE /peerconnections/0487d1d1-4175-4c7c-9574-0e6471187b84 204 49ms","method":"DELETE","requestID":"7e2584e0-6a0a-11ef-9b41-2363e6623fc8","responseTime":49,"status":204,"url":"/peerconnections/0487d1d1-4175-4c7c-9574-0e6471187b84"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5776d9ec-d297-4036-b9fe-d4a45a1c929e"},"level":"info","message":"Successfully finished experiment","requestID":"155fcdb624e0e267a401cb0f2c7785df"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7e2fe520-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":265,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:57Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3711e49c-458a-44d6-a23e-ef52d77c9569","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377877.1136043} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":265,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.694905,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7e2fe520-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"7e2fe520-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7e2fe520-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb/signaling 200 14ms","method":"POST","requestID":"7e2fe520-6a0a-11ef-9b41-2363e6623fc8","responseTime":14,"status":200,"url":"/devices/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb/signaling"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5776d9ec-d297-4036-b9fe-d4a45a1c929e': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5776d9ec-d297-4036-b9fe-d4a45a1c929e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"3eca4dbf-27a0-4c7c-bd32-4d524d1d3d6a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377877.1217318} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5033135f-156c-4937-a8ac-d71dbce8cde2","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377877.122126} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7e327d30-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"155fcdb624e0e267a401cb0f2c7785df","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":266,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:57Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F87fa3270-4977-404f-8846-e562375c06e0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f2f7e646-b5e1-4719-8d7e-c5b93a88dc31","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377877.1281254} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":266,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.562377,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/87fa3270-4977-404f-8846-e562375c06e0","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7e327d30-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/87fa3270-4977-404f-8846-e562375c06e0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7e327d30-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7e327d30-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/87fa3270-4977-404f-8846-e562375c06e0/signaling 200 10ms","method":"POST","requestID":"7e327d30-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/devices/87fa3270-4977-404f-8846-e562375c06e0/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/5776d9ec-d297-4036-b9fe-d4a45a1c929e","requestID":"155fcdb624e0e267a401cb0f2c7785df"} gateway-1 | {"time_local":"03/Sep/2024:15:37:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/5776d9ec-d297-4036-b9fe-d4a45a1c929e 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":"155fcdb624e0e267a401cb0f2c7785df"} gateway-1 | {"time_local":"03/Sep/2024:15:37:57 +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.442","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"9f94b13a56b68002e2a20076c31faa5a"} experiment-1 | {"level":"info","message":"DELETE /experiments/5776d9ec-d297-4036-b9fe-d4a45a1c929e 204 182ms","method":"DELETE","requestID":"155fcdb624e0e267a401cb0f2c7785df","responseTime":182,"status":204,"url":"/experiments/5776d9ec-d297-4036-b9fe-d4a45a1c929e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 129ms","method":"POST","requestID":"34d2307edc5de68de8ca0094976308c1","responseTime":129,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:37:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.133","http_referrer":"","http_user_agent":"node-fetch","requestID":"34d2307edc5de68de8ca0094976308c1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 128ms","method":"POST","requestID":"892d2f89b10eac739a3f1d4493cc7cda","responseTime":128,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:37:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.133","http_referrer":"","http_user_agent":"node-fetch","requestID":"892d2f89b10eac739a3f1d4493cc7cda"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3N30.c9fRkKrWeQMRyfteCYISnHRpK9PMqClQDvyFhFK8i0Q","level":"info","message":"auth send jwt","requestID":"40da5b48d92b7d3a1a171f6895ca4fe3"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"40da5b48d92b7d3a1a171f6895ca4fe3","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"40da5b48d92b7d3a1a171f6895ca4fe3"} gateway-1 | {"time_local":"03/Sep/2024:15:37:57 +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.942","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"2632c8478212cb3b6983f643730630c2"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":267,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:57Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":267,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.926493,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"40da5b48d92b7d3a1a171f6895ca4fe3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377877,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3N30.c9fRkKrWeQMRyfteCYISnHRpK9PMqClQDvyFhFK8i0Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"40da5b48d92b7d3a1a171f6895ca4fe3","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/87fa3270-4977-404f-8846-e562375c06e0' 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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea54db5-6039-4c67-a874-7b57f71589bb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"88b9f51b-5244-4f31-87f7-09b0588c54b1","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377877.2229295} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"40da5b48d92b7d3a1a171f6895ca4fe3","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/2dc19f7a-b0d4-4957-9b12-ca24cd54f5eb' 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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f290a00b-8844-453e-999a-6a50ead7fdbc","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377877.228985} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"40da5b48d92b7d3a1a171f6895ca4fe3","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea54db5-6039-4c67-a874-7b57f71589bb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"9dc56184-57a5-4277-b8e3-b1baa34cfeb1","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377877.2390866} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cf11ccb4-0510-44ed-8791-c9c0d78da518","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377877.2393558} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"40da5b48d92b7d3a1a171f6895ca4fe3","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea54db5-6039-4c67-a874-7b57f71589bb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea54db5-6039-4c67-a874-7b57f71589bb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:57.239069806Z"}]},"request_id":"57c66a2a-d67b-4519-bbdd-625ba9f4653d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377877.2434928} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"40da5b48d92b7d3a1a171f6895ca4fe3","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"40da5b48d92b7d3a1a171f6895ca4fe3"} gateway-1 | {"time_local":"03/Sep/2024:15:37:57 +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":"40da5b48d92b7d3a1a171f6895ca4fe3"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"40da5b48d92b7d3a1a171f6895ca4fe3","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3N30.c9fRkKrWeQMRyfteCYISnHRpK9PMqClQDvyFhFK8i0Q","level":"info","message":"auth send jwt","requestID":"6735dd1163ef00492bd2a424b3111813"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6735dd1163ef00492bd2a424b3111813","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"6735dd1163ef00492bd2a424b3111813"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":268,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:57Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":268,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.662209,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6735dd1163ef00492bd2a424b3111813","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377877,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3N30.c9fRkKrWeQMRyfteCYISnHRpK9PMqClQDvyFhFK8i0Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6735dd1163ef00492bd2a424b3111813","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf2aed00-b5f0-45e1-9167-68e637ba418f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"86317a25-241b-4642-9840-b8d3d79c91fe","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377877.2746687} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"6735dd1163ef00492bd2a424b3111813","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8997bd68-2801-479c-b890-6c8a8f4e035a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377877.279588} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"6735dd1163ef00492bd2a424b3111813","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf2aed00-b5f0-45e1-9167-68e637ba418f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"8a04b854-085c-4a3c-807f-e31d245a8a62","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377877.2913158} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d390208c-df3f-4842-abef-a66dec515c2f","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377877.2918317} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"6735dd1163ef00492bd2a424b3111813","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf2aed00-b5f0-45e1-9167-68e637ba418f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf2aed00-b5f0-45e1-9167-68e637ba418f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:57.291298924Z"}]},"request_id":"559546ca-bf56-4884-81e7-226da404a90c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377877.2979143} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6735dd1163ef00492bd2a424b3111813","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"6735dd1163ef00492bd2a424b3111813"} gateway-1 | {"time_local":"03/Sep/2024:15:37:57 +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":"6735dd1163ef00492bd2a424b3111813"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"6735dd1163ef00492bd2a424b3111813","responseTime":49,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3N30.c9fRkKrWeQMRyfteCYISnHRpK9PMqClQDvyFhFK8i0Q","level":"info","message":"auth send jwt","requestID":"28f095a43072a83565ad3c9f2e19613d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"28f095a43072a83565ad3c9f2e19613d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"28f095a43072a83565ad3c9f2e19613d"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":269,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:57Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":269,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.144302,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:57Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ea54db5-6039-4c67-a874-7b57f71589bb","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"28f095a43072a83565ad3c9f2e19613d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/8ea54db5-6039-4c67-a874-7b57f71589bb","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377877,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3N30.c9fRkKrWeQMRyfteCYISnHRpK9PMqClQDvyFhFK8i0Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"28f095a43072a83565ad3c9f2e19613d","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea54db5-6039-4c67-a874-7b57f71589bb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea54db5-6039-4c67-a874-7b57f71589bb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:57.239069806Z"}]},"request_id":"4336ca8c-49e7-4f53-bcd9-6ba8751fa4cf","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377877.7652686} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"28f095a43072a83565ad3c9f2e19613d","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8554c2f0-b299-463c-bc6f-9929b347f38a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377877.7739806} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"28f095a43072a83565ad3c9f2e19613d","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea54db5-6039-4c67-a874-7b57f71589bb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea54db5-6039-4c67-a874-7b57f71589bb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:57.239069806Z"}]},"request_id":"4b8d2b0d-486c-4eb9-8338-e7490f762151","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377877.787383} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"28f095a43072a83565ad3c9f2e19613d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"28f095a43072a83565ad3c9f2e19613d"} gateway-1 | {"time_local":"03/Sep/2024:15:37:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/8ea54db5-6039-4c67-a874-7b57f71589bb HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.046","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"28f095a43072a83565ad3c9f2e19613d"} device-1 | {"level":"info","message":"PATCH /devices/8ea54db5-6039-4c67-a874-7b57f71589bb 200 40ms","method":"PATCH","requestID":"28f095a43072a83565ad3c9f2e19613d","responseTime":40,"status":200,"url":"/devices/8ea54db5-6039-4c67-a874-7b57f71589bb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3N30.c9fRkKrWeQMRyfteCYISnHRpK9PMqClQDvyFhFK8i0Q","level":"info","message":"auth send jwt","requestID":"cebbdb1a01915eda2d7cd84f6b9e1500"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"cebbdb1a01915eda2d7cd84f6b9e1500","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"cebbdb1a01915eda2d7cd84f6b9e1500"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":270,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:57Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":270,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.276864,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:57Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ea54db5-6039-4c67-a874-7b57f71589bb","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"cebbdb1a01915eda2d7cd84f6b9e1500","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/8ea54db5-6039-4c67-a874-7b57f71589bb","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377877,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3N30.c9fRkKrWeQMRyfteCYISnHRpK9PMqClQDvyFhFK8i0Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cebbdb1a01915eda2d7cd84f6b9e1500","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"cebbdb1a01915eda2d7cd84f6b9e1500"} device-1 | {"level":"info","message":"POST /devices/8ea54db5-6039-4c67-a874-7b57f71589bb/websocket 200 25ms","method":"POST","requestID":"cebbdb1a01915eda2d7cd84f6b9e1500","responseTime":25,"status":200,"url":"/devices/8ea54db5-6039-4c67-a874-7b57f71589bb/websocket"} gateway-1 | {"time_local":"03/Sep/2024:15:37:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8ea54db5-6039-4c67-a874-7b57f71589bb/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.030","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"cebbdb1a01915eda2d7cd84f6b9e1500"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8ea54db5-6039-4c67-a874-7b57f71589bb' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3a8f23bc5102f0f8d1145536290a065b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3a8f23bc5102f0f8d1145536290a065b","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"03/Sep/2024:15:37:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/bf2aed00-b5f0-45e1-9167-68e637ba418f/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":"3a8f23bc5102f0f8d1145536290a065b"} device-1 | {"level":"info","message":"OPTIONS /devices/bf2aed00-b5f0-45e1-9167-68e637ba418f/websocket 200 1ms","method":"OPTIONS","requestID":"3a8f23bc5102f0f8d1145536290a065b","responseTime":1,"status":200,"url":"/devices/bf2aed00-b5f0-45e1-9167-68e637ba418f/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3OX0.baHNw3zkW1wDKdFiRwy3kpvKfhVEKpWduDSFKYndLkw","level":"info","message":"auth send jwt","requestID":"0ad3023593b7f41b2b4c836a12c09c17"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"0ad3023593b7f41b2b4c836a12c09c17","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0ad3023593b7f41b2b4c836a12c09c17"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":271,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:59Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":271,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.279723,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:59Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/bf2aed00-b5f0-45e1-9167-68e637ba418f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"0ad3023593b7f41b2b4c836a12c09c17","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/bf2aed00-b5f0-45e1-9167-68e637ba418f","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377879,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3OX0.baHNw3zkW1wDKdFiRwy3kpvKfhVEKpWduDSFKYndLkw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0ad3023593b7f41b2b4c836a12c09c17","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0ad3023593b7f41b2b4c836a12c09c17"} gateway-1 | {"time_local":"03/Sep/2024:15:37:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/bf2aed00-b5f0-45e1-9167-68e637ba418f/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":"0ad3023593b7f41b2b4c836a12c09c17"} device-1 | {"level":"info","message":"POST /devices/bf2aed00-b5f0-45e1-9167-68e637ba418f/websocket 200 23ms","method":"POST","requestID":"0ad3023593b7f41b2b4c836a12c09c17","responseTime":23,"status":200,"url":"/devices/bf2aed00-b5f0-45e1-9167-68e637ba418f/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/bf2aed00-b5f0-45e1-9167-68e637ba418f' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3OX0.baHNw3zkW1wDKdFiRwy3kpvKfhVEKpWduDSFKYndLkw","level":"info","message":"auth send jwt","requestID":"c31e12faf9caea820f895989517cc8ee"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c31e12faf9caea820f895989517cc8ee","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c31e12faf9caea820f895989517cc8ee"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":272,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:59Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":272,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.063989,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ea54db5-6039-4c67-a874-7b57f71589bb","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"c31e12faf9caea820f895989517cc8ee","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/8ea54db5-6039-4c67-a874-7b57f71589bb","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377879,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3OX0.baHNw3zkW1wDKdFiRwy3kpvKfhVEKpWduDSFKYndLkw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c31e12faf9caea820f895989517cc8ee","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea54db5-6039-4c67-a874-7b57f71589bb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea54db5-6039-4c67-a874-7b57f71589bb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:57.239069806Z"}]},"request_id":"f5f606c9-e886-4295-882e-166f668b1137","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377879.4014456} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c31e12faf9caea820f895989517cc8ee","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c31e12faf9caea820f895989517cc8ee"} gateway-1 | {"time_local":"03/Sep/2024:15:37:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8ea54db5-6039-4c67-a874-7b57f71589bb? 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":"c31e12faf9caea820f895989517cc8ee"} device-1 | {"level":"info","message":"GET /devices/8ea54db5-6039-4c67-a874-7b57f71589bb? 200 16ms","method":"GET","requestID":"c31e12faf9caea820f895989517cc8ee","responseTime":16,"status":200,"url":"/devices/8ea54db5-6039-4c67-a874-7b57f71589bb?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3OX0.baHNw3zkW1wDKdFiRwy3kpvKfhVEKpWduDSFKYndLkw","level":"info","message":"auth send jwt","requestID":"1dcec5eee6b0f0f052da5cbe35b365ef"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"1dcec5eee6b0f0f052da5cbe35b365ef","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1dcec5eee6b0f0f052da5cbe35b365ef"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":273,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:59Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":273,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.293417,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bf2aed00-b5f0-45e1-9167-68e637ba418f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"1dcec5eee6b0f0f052da5cbe35b365ef","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/bf2aed00-b5f0-45e1-9167-68e637ba418f","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377879,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3OX0.baHNw3zkW1wDKdFiRwy3kpvKfhVEKpWduDSFKYndLkw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1dcec5eee6b0f0f052da5cbe35b365ef","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf2aed00-b5f0-45e1-9167-68e637ba418f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf2aed00-b5f0-45e1-9167-68e637ba418f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:57.291298924Z"}]},"request_id":"50e7dd97-43c1-4bae-8833-bda7d84661cc","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377879.427253} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1dcec5eee6b0f0f052da5cbe35b365ef","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1dcec5eee6b0f0f052da5cbe35b365ef"} device-1 | {"level":"info","message":"GET /devices/bf2aed00-b5f0-45e1-9167-68e637ba418f? 200 19ms","method":"GET","requestID":"1dcec5eee6b0f0f052da5cbe35b365ef","responseTime":19,"status":200,"url":"/devices/bf2aed00-b5f0-45e1-9167-68e637ba418f?"} gateway-1 | {"time_local":"03/Sep/2024:15:37:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/bf2aed00-b5f0-45e1-9167-68e637ba418f? 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":"1dcec5eee6b0f0f052da5cbe35b365ef"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3OX0.baHNw3zkW1wDKdFiRwy3kpvKfhVEKpWduDSFKYndLkw","level":"info","message":"auth send jwt","requestID":"6e5092f6022eb7bfaa1b06d4dc4d5768"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"6e5092f6022eb7bfaa1b06d4dc4d5768","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"6e5092f6022eb7bfaa1b06d4dc4d5768"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":274,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:59Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":274,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.752691,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:59Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6e5092f6022eb7bfaa1b06d4dc4d5768","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377879,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3OX0.baHNw3zkW1wDKdFiRwy3kpvKfhVEKpWduDSFKYndLkw"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"6e5092f6022eb7bfaa1b06d4dc4d5768","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2d4018ec-91a9-4d36-bdcc-3ecd02a56e83"},"level":"info","message":"Attempting to run experiment","requestID":"6e5092f6022eb7bfaa1b06d4dc4d5768"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2d4018ec-91a9-4d36-bdcc-3ecd02a56e83"},"level":"info","message":"Attempting to book experiment","requestID":"6e5092f6022eb7bfaa1b06d4dc4d5768"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2d4018ec-91a9-4d36-bdcc-3ecd02a56e83"},"level":"info","message":"Successfully booked experiment","requestID":"6e5092f6022eb7bfaa1b06d4dc4d5768"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7f9bd130-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7f9c1f50-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":275,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:59Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":275,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.259916,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:59Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":276,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ea54db5-6039-4c67-a874-7b57f71589bb","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7f9bd130-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/8ea54db5-6039-4c67-a874-7b57f71589bb","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377879,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3OX0.baHNw3zkW1wDKdFiRwy3kpvKfhVEKpWduDSFKYndLkw"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"7f9bd130-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":276,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.305718,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bf2aed00-b5f0-45e1-9167-68e637ba418f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7f9c1f50-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/bf2aed00-b5f0-45e1-9167-68e637ba418f","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377879,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3OX0.baHNw3zkW1wDKdFiRwy3kpvKfhVEKpWduDSFKYndLkw"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"7f9c1f50-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea54db5-6039-4c67-a874-7b57f71589bb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea54db5-6039-4c67-a874-7b57f71589bb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:57.239069806Z"}]},"request_id":"cfdbd3c1-fd50-4f15-8a42-e0e2d8895624","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377879.5049078} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"7f9bd130-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf2aed00-b5f0-45e1-9167-68e637ba418f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf2aed00-b5f0-45e1-9167-68e637ba418f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:57.291298924Z"}]},"request_id":"352862a0-219e-4274-88da-bef9c7c59890","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377879.506422} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"7f9c1f50-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7f9bd130-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/8ea54db5-6039-4c67-a874-7b57f71589bb? 200 24ms","method":"GET","requestID":"7f9bd130-6a0a-11ef-9b41-2363e6623fc8","responseTime":24,"status":200,"url":"/devices/8ea54db5-6039-4c67-a874-7b57f71589bb?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7f9c1f50-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/bf2aed00-b5f0-45e1-9167-68e637ba418f? 200 23ms","method":"GET","requestID":"7f9c1f50-6a0a-11ef-9b41-2363e6623fc8","responseTime":23,"status":200,"url":"/devices/bf2aed00-b5f0-45e1-9167-68e637ba418f?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2d4018ec-91a9-4d36-bdcc-3ecd02a56e83"},"level":"info","message":"Setting up experiment","requestID":"6e5092f6022eb7bfaa1b06d4dc4d5768"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2d4018ec-91a9-4d36-bdcc-3ecd02a56e83"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"6e5092f6022eb7bfaa1b06d4dc4d5768"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2d4018ec-91a9-4d36-bdcc-3ecd02a56e83"},"level":"info","message":"Successfully locked booking for experiment","requestID":"6e5092f6022eb7bfaa1b06d4dc4d5768"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2d4018ec-91a9-4d36-bdcc-3ecd02a56e83"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"6e5092f6022eb7bfaa1b06d4dc4d5768"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2d4018ec-91a9-4d36-bdcc-3ecd02a56e83"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"6e5092f6022eb7bfaa1b06d4dc4d5768"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2d4018ec-91a9-4d36-bdcc-3ecd02a56e83"},"level":"info","message":"Attempting to update booking for experiment","requestID":"6e5092f6022eb7bfaa1b06d4dc4d5768"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2d4018ec-91a9-4d36-bdcc-3ecd02a56e83"},"level":"info","message":"Successfully updated booking for experiment","requestID":"6e5092f6022eb7bfaa1b06d4dc4d5768"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2d4018ec-91a9-4d36-bdcc-3ecd02a56e83"},"level":"info","message":"Successfully set up experiment","requestID":"6e5092f6022eb7bfaa1b06d4dc4d5768"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7fa63170-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7fa67f90-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7fa6cdb0-6a0a-11ef-9b41-2363e6623fc8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2d4018ec-91a9-4d36-bdcc-3ecd02a56e83"},"level":"info","message":"Successfully running experiment","requestID":"6e5092f6022eb7bfaa1b06d4dc4d5768"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":277,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:59Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":277,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.733152,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:59Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":278,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ea54db5-6039-4c67-a874-7b57f71589bb","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7fa63170-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/8ea54db5-6039-4c67-a874-7b57f71589bb","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377879,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3OX0.baHNw3zkW1wDKdFiRwy3kpvKfhVEKpWduDSFKYndLkw"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"7fa63170-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":278,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.988313,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:59Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":279,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bf2aed00-b5f0-45e1-9167-68e637ba418f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7fa67f90-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/bf2aed00-b5f0-45e1-9167-68e637ba418f","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377879,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3OX0.baHNw3zkW1wDKdFiRwy3kpvKfhVEKpWduDSFKYndLkw"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"7fa67f90-6a0a-11ef-9b41-2363e6623fc8","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":279,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.751722,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:59Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea54db5-6039-4c67-a874-7b57f71589bb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"368bf9af-1eb1-41e7-9ce2-b89e493edfef","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377879.5735514} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ea54db5-6039-4c67-a874-7b57f71589bb","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7fa6cdb0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ea54db5-6039-4c67-a874-7b57f71589bb","object_type":"device","rebac_allow":false,"scope_allow":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":"7fa6cdb0-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7fa6cdb0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/8ea54db5-6039-4c67-a874-7b57f71589bb/signaling 200 19ms","method":"POST","requestID":"7fa6cdb0-6a0a-11ef-9b41-2363e6623fc8","responseTime":19,"status":200,"url":"/devices/8ea54db5-6039-4c67-a874-7b57f71589bb/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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea54db5-6039-4c67-a874-7b57f71589bb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea54db5-6039-4c67-a874-7b57f71589bb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:57.239069806Z"}]},"request_id":"44788855-663d-4e99-b36e-062a5353329d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377879.5817244} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"7fa63170-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf2aed00-b5f0-45e1-9167-68e637ba418f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf2aed00-b5f0-45e1-9167-68e637ba418f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:57.291298924Z"}]},"request_id":"3705e2d7-7f25-4528-9076-6e816975e91c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377879.5836132} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7faa0200-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7fa67f90-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":280,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:59Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7fa63170-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/8ea54db5-6039-4c67-a874-7b57f71589bb? 200 33ms","method":"GET","requestID":"7fa63170-6a0a-11ef-9b41-2363e6623fc8","responseTime":33,"status":200,"url":"/devices/8ea54db5-6039-4c67-a874-7b57f71589bb?"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf2aed00-b5f0-45e1-9167-68e637ba418f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bc7d4feb-31b7-46d2-a8bc-dc6c49db47c8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377879.5904374} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":280,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.262787,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:59Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7fa67f90-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/bf2aed00-b5f0-45e1-9167-68e637ba418f? 200 32ms","method":"GET","requestID":"7fa67f90-6a0a-11ef-9b41-2363e6623fc8","responseTime":32,"status":200,"url":"/devices/bf2aed00-b5f0-45e1-9167-68e637ba418f?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bf2aed00-b5f0-45e1-9167-68e637ba418f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7faa0200-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bf2aed00-b5f0-45e1-9167-68e637ba418f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"7faa0200-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2d4018ec-91a9-4d36-bdcc-3ecd02a56e83#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2d4018ec-91a9-4d36-bdcc-3ecd02a56e83","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"a71af7b8-ddae-485c-b577-f39a5d075ecd","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377879.5927896} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e8aa9aa9-555a-4994-8478-eca085c0273a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377879.5930839} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"6e5092f6022eb7bfaa1b06d4dc4d5768","responseTime":25,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7fabd6c0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7faa0200-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":281,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:59Z"} device-1 | {"level":"info","message":"POST /devices/bf2aed00-b5f0-45e1-9167-68e637ba418f/signaling 200 15ms","method":"POST","requestID":"7faa0200-6a0a-11ef-9b41-2363e6623fc8","responseTime":15,"status":200,"url":"/devices/bf2aed00-b5f0-45e1-9167-68e637ba418f/signaling"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea54db5-6039-4c67-a874-7b57f71589bb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8f3f719f-c87a-4199-b197-b621686902b5","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377879.6011302} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":281,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.981853,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ea54db5-6039-4c67-a874-7b57f71589bb","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7fabd6c0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ea54db5-6039-4c67-a874-7b57f71589bb","object_type":"device","rebac_allow":false,"scope_allow":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":"7fabd6c0-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/2d4018ec-91a9-4d36-bdcc-3ecd02a56e83","user":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"6e5092f6022eb7bfaa1b06d4dc4d5768"} gateway-1 | {"time_local":"03/Sep/2024:15:37:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"781","request_time":"0.171","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6e5092f6022eb7bfaa1b06d4dc4d5768"} experiment-1 | {"level":"info","message":"POST /experiments? 201 164ms","method":"POST","requestID":"6e5092f6022eb7bfaa1b06d4dc4d5768","responseTime":164,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7fabd6c0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/8ea54db5-6039-4c67-a874-7b57f71589bb/signaling 200 12ms","method":"POST","requestID":"7fabd6c0-6a0a-11ef-9b41-2363e6623fc8","responseTime":12,"status":200,"url":"/devices/8ea54db5-6039-4c67-a874-7b57f71589bb/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3OX0.baHNw3zkW1wDKdFiRwy3kpvKfhVEKpWduDSFKYndLkw","level":"info","message":"auth send jwt","requestID":"db2d889679e462e70fe53697323373b2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7fae20b0-6a0a-11ef-9b41-2363e6623fc8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"db2d889679e462e70fe53697323373b2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"db2d889679e462e70fe53697323373b2"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":282,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:59Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":283,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:59Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf2aed00-b5f0-45e1-9167-68e637ba418f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8f25460d-b631-4e85-bbdb-fce22cd420fb","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377879.6179903} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":283,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.990646,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ea54db5-6039-4c67-a874-7b57f71589bb","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"db2d889679e462e70fe53697323373b2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/8ea54db5-6039-4c67-a874-7b57f71589bb","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377879,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3OX0.baHNw3zkW1wDKdFiRwy3kpvKfhVEKpWduDSFKYndLkw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"db2d889679e462e70fe53697323373b2","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":282,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.101911,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bf2aed00-b5f0-45e1-9167-68e637ba418f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7fae20b0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bf2aed00-b5f0-45e1-9167-68e637ba418f","object_type":"device","rebac_allow":false,"scope_allow":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":"7fae20b0-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea54db5-6039-4c67-a874-7b57f71589bb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea54db5-6039-4c67-a874-7b57f71589bb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:57.239069806Z"}]},"request_id":"540185f0-fa6f-420c-b518-ac29a9ade313","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377879.62504} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7fae20b0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/bf2aed00-b5f0-45e1-9167-68e637ba418f/signaling 200 14ms","method":"POST","requestID":"7fae20b0-6a0a-11ef-9b41-2363e6623fc8","responseTime":14,"status":200,"url":"/devices/bf2aed00-b5f0-45e1-9167-68e637ba418f/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"db2d889679e462e70fe53697323373b2","responseTime":4,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2d4018ec-91a9-4d36-bdcc-3ecd02a56e83"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"6e5092f6022eb7bfaa1b06d4dc4d5768"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2d4018ec-91a9-4d36-bdcc-3ecd02a56e83"},"level":"info","message":"Building connection plan","requestID":"6e5092f6022eb7bfaa1b06d4dc4d5768"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"08689ec9-fbdf-4314-a557-05da1ddaefd4"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"43305461-e4b1-41c2-abe0-4007dc50d6ff"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/file","uuid":"d1367179-eae6-4ea6-aab9-1dca67bd63d9"}]},"level":"info","message":"Built pairwise service configurations","requestID":"6e5092f6022eb7bfaa1b06d4dc4d5768"} 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/bf2aed00-b5f0-45e1-9167-68e637ba418f"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/8ea54db5-6039-4c67-a874-7b57f71589bb"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"6e5092f6022eb7bfaa1b06d4dc4d5768"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"7fb0b8c0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"db2d889679e462e70fe53697323373b2"} gateway-1 | {"time_local":"03/Sep/2024:15:37:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8ea54db5-6039-4c67-a874-7b57f71589bb? 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":"db2d889679e462e70fe53697323373b2"} device-1 | {"level":"info","message":"GET /devices/8ea54db5-6039-4c67-a874-7b57f71589bb? 200 16ms","method":"GET","requestID":"db2d889679e462e70fe53697323373b2","responseTime":16,"status":200,"url":"/devices/8ea54db5-6039-4c67-a874-7b57f71589bb?"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":284,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:59Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":284,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.343972,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:59Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7fb0b8c0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377879,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3OX0.baHNw3zkW1wDKdFiRwy3kpvKfhVEKpWduDSFKYndLkw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7fb0b8c0-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3OX0.baHNw3zkW1wDKdFiRwy3kpvKfhVEKpWduDSFKYndLkw","level":"info","message":"auth send jwt","requestID":"7a861af28f7591e055e1c3dc5ef57a92"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"7a861af28f7591e055e1c3dc5ef57a92","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7a861af28f7591e055e1c3dc5ef57a92"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":285,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:59Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":285,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.731837,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bf2aed00-b5f0-45e1-9167-68e637ba418f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7a861af28f7591e055e1c3dc5ef57a92","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/bf2aed00-b5f0-45e1-9167-68e637ba418f","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377879,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg3OX0.baHNw3zkW1wDKdFiRwy3kpvKfhVEKpWduDSFKYndLkw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7a861af28f7591e055e1c3dc5ef57a92","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf2aed00-b5f0-45e1-9167-68e637ba418f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf2aed00-b5f0-45e1-9167-68e637ba418f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:37:57.291298924Z"}]},"request_id":"2a8c7e43-7ca8-40bd-b1d3-a822a9b95435","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377879.642511} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7a861af28f7591e055e1c3dc5ef57a92","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","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%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"13a2dd0b-12ba-4595-84ce-62c5d12a66dd","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377879.6436079} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5041a4bf-1db1-43e4-bd31-91f16e6c0150","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377879.6438944} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7a861af28f7591e055e1c3dc5ef57a92"} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"7fb0b8c0-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/relations/update"} gateway-1 | {"time_local":"03/Sep/2024:15:37:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/bf2aed00-b5f0-45e1-9167-68e637ba418f? 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":"7a861af28f7591e055e1c3dc5ef57a92"} device-1 | {"level":"info","message":"GET /devices/bf2aed00-b5f0-45e1-9167-68e637ba418f? 200 12ms","method":"GET","requestID":"7a861af28f7591e055e1c3dc5ef57a92","responseTime":12,"status":200,"url":"/devices/bf2aed00-b5f0-45e1-9167-68e637ba418f?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"7fb0b8c0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"7fb0b8c0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/6893d7c1-212d-4992-adcd-1f2126284bdb'","requestID":"7fb0b8c0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/6893d7c1-212d-4992-adcd-1f2126284bdb'","requestID":"7fb0b8c0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"7fb0b8c0-6a0a-11ef-9b41-2363e6623fc8"} 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":"7fb0b8c0-6a0a-11ef-9b41-2363e6623fc8","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":"7fb0b8c0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/6893d7c1-212d-4992-adcd-1f2126284bdb","device":"bf2aed00-b5f0-45e1-9167-68e637ba418f","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/2d4018ec-91a9-4d36-bdcc-3ecd02a56e83"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"6e5092f6022eb7bfaa1b06d4dc4d5768"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7fba55b0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"device":"bf2aed00-b5f0-45e1-9167-68e637ba418f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"bf2aed00-b5f0-45e1-9167-68e637ba418f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":286,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:59Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea54db5-6039-4c67-a874-7b57f71589bb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9f2f21d6-5125-4749-820f-b23e2c44527b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377879.6958385} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":286,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.366161,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ea54db5-6039-4c67-a874-7b57f71589bb","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7fba55b0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ea54db5-6039-4c67-a874-7b57f71589bb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7fba55b0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7fba55b0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/8ea54db5-6039-4c67-a874-7b57f71589bb/signaling 200 8ms","method":"POST","requestID":"7fba55b0-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/devices/8ea54db5-6039-4c67-a874-7b57f71589bb/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7fbbdc50-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":287,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:37:59Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf2aed00-b5f0-45e1-9167-68e637ba418f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d2b714be-6746-4553-8e05-1733c81bfaec","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377879.7056613} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":287,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.391565,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:37:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bf2aed00-b5f0-45e1-9167-68e637ba418f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7fbbdc50-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bf2aed00-b5f0-45e1-9167-68e637ba418f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7fbbdc50-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7fbbdc50-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/bf2aed00-b5f0-45e1-9167-68e637ba418f/signaling 200 9ms","method":"POST","requestID":"7fbbdc50-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/devices/bf2aed00-b5f0-45e1-9167-68e637ba418f/signaling"} device-1 | {"device":"8ea54db5-6039-4c67-a874-7b57f71589bb","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":"6893d7c1-212d-4992-adcd-1f2126284bdb","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 1649452787190127419 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:eyjq\r\na=ice-pwd:f6pvOGuYQSXVCeEPZQcLgUoW\r\na=ice-options:trickle\r\na=fingerprint:sha-256 75:08:19:45:C4:D1:3F:5D:44:EE:1A:28:33:5F:68:D5:E7:F4:D0:7E:72:00:7D:4F:A2:61:89:51:DE:6A:9B:95\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"bf2aed00-b5f0-45e1-9167-68e637ba418f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:2691550294 1 udp 2113937151 7ab7fa85-6f3e-4ab1-bb13-fa808c92d823.local 51744 typ host generation 0 ufrag eyjq network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"bf2aed00-b5f0-45e1-9167-68e637ba418f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"bf2aed00-b5f0-45e1-9167-68e637ba418f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"8ea54db5-6039-4c67-a874-7b57f71589bb","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":"8ea54db5-6039-4c67-a874-7b57f71589bb","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":"8ea54db5-6039-4c67-a874-7b57f71589bb","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:860253509 1 udp 1677729535 141.24.211.56 51744 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag eyjq network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"bf2aed00-b5f0-45e1-9167-68e637ba418f","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/6893d7c1-212d-4992-adcd-1f2126284bdb' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6893d7c1-212d-4992-adcd-1f2126284bdb","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"bf2aed00-b5f0-45e1-9167-68e637ba418f","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/bf2aed00-b5f0-45e1-9167-68e637ba418f'"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"aed26b784cc34e7a546ac828943e57d5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"aed26b784cc34e7a546ac828943e57d5","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":"connecting","url":"http://localhost/devices/bf2aed00-b5f0-45e1-9167-68e637ba418f"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/8ea54db5-6039-4c67-a874-7b57f71589bb"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/6893d7c1-212d-4992-adcd-1f2126284bdb"}}},"level":"info","message":"received a callback","requestID":"aed26b784cc34e7a546ac828943e57d5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"aed26b784cc34e7a546ac828943e57d5","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"aed26b784cc34e7a546ac828943e57d5"} device-1 | {"data":{"peerconnection":"6893d7c1-212d-4992-adcd-1f2126284bdb","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"8ea54db5-6039-4c67-a874-7b57f71589bb","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":"bf2aed00-b5f0-45e1-9167-68e637ba418f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"8ea54db5-6039-4c67-a874-7b57f71589bb","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":"6893d7c1-212d-4992-adcd-1f2126284bdb","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"bf2aed00-b5f0-45e1-9167-68e637ba418f","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/6893d7c1-212d-4992-adcd-1f2126284bdb' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6893d7c1-212d-4992-adcd-1f2126284bdb","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"74b5c7e546876283d8ddecccc8242f6c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"74b5c7e546876283d8ddecccc8242f6c","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/bf2aed00-b5f0-45e1-9167-68e637ba418f"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/8ea54db5-6039-4c67-a874-7b57f71589bb"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/6893d7c1-212d-4992-adcd-1f2126284bdb"}}},"level":"info","message":"received a callback","requestID":"74b5c7e546876283d8ddecccc8242f6c"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"8103ecb0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":288,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:01Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6893d7c1-212d-4992-adcd-1f2126284bdb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cc7a2543-86eb-45f7-9098-10a47974ad11","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377881.8585644} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":288,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.675703,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/6893d7c1-212d-4992-adcd-1f2126284bdb","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8103ecb0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/6893d7c1-212d-4992-adcd-1f2126284bdb","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":"8103ecb0-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"8103ecb0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /peerconnections/6893d7c1-212d-4992-adcd-1f2126284bdb 200 14ms","method":"GET","requestID":"8103ecb0-6a0a-11ef-9b41-2363e6623fc8","responseTime":14,"status":200,"url":"/peerconnections/6893d7c1-212d-4992-adcd-1f2126284bdb"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 48ms","method":"POST","requestID":"74b5c7e546876283d8ddecccc8242f6c","responseTime":48,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch","requestID":"74b5c7e546876283d8ddecccc8242f6c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8109e020-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":289,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:01Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf2aed00-b5f0-45e1-9167-68e637ba418f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7a65cbe0-d7eb-4a53-b750-b704a03ad661","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377881.8951738} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":289,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.634099,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bf2aed00-b5f0-45e1-9167-68e637ba418f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8109e020-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bf2aed00-b5f0-45e1-9167-68e637ba418f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8109e020-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8109e020-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/bf2aed00-b5f0-45e1-9167-68e637ba418f/signaling 200 10ms","method":"POST","requestID":"8109e020-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/devices/bf2aed00-b5f0-45e1-9167-68e637ba418f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"810bb4e0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":290,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:01Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea54db5-6039-4c67-a874-7b57f71589bb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6084d142-49b8-4261-aba8-8880767c108d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377881.9084325} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":290,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.981094,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ea54db5-6039-4c67-a874-7b57f71589bb","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"810bb4e0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ea54db5-6039-4c67-a874-7b57f71589bb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"810bb4e0-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"810bb4e0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/8ea54db5-6039-4c67-a874-7b57f71589bb/signaling 200 11ms","method":"POST","requestID":"810bb4e0-6a0a-11ef-9b41-2363e6623fc8","responseTime":11,"status":200,"url":"/devices/8ea54db5-6039-4c67-a874-7b57f71589bb/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4Mn0.kJaRa0iGXy6O0PzwOHEasljMBpadABbPfH8b7oojH1I","level":"info","message":"auth send jwt","requestID":"57df029d0f0386abcb587a7b9caabe16"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"57df029d0f0386abcb587a7b9caabe16","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/2d4018ec-91a9-4d36-bdcc-3ecd02a56e83","requestID":"57df029d0f0386abcb587a7b9caabe16"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":291,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:02Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":291,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.257827,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/2d4018ec-91a9-4d36-bdcc-3ecd02a56e83","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"57df029d0f0386abcb587a7b9caabe16","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/2d4018ec-91a9-4d36-bdcc-3ecd02a56e83","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377882,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4Mn0.kJaRa0iGXy6O0PzwOHEasljMBpadABbPfH8b7oojH1I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"57df029d0f0386abcb587a7b9caabe16","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/2d4018ec-91a9-4d36-bdcc-3ecd02a56e83","requestID":"57df029d0f0386abcb587a7b9caabe16"} gateway-1 | {"time_local":"03/Sep/2024:15:38:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/2d4018ec-91a9-4d36-bdcc-3ecd02a56e83 HTTP/1.1","status": "200","body_bytes_sent":"854","request_time":"0.029","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"57df029d0f0386abcb587a7b9caabe16"} experiment-1 | {"level":"info","message":"GET /experiments/2d4018ec-91a9-4d36-bdcc-3ecd02a56e83 200 22ms","method":"GET","requestID":"57df029d0f0386abcb587a7b9caabe16","responseTime":22,"status":200,"url":"/experiments/2d4018ec-91a9-4d36-bdcc-3ecd02a56e83"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4Mn0.kJaRa0iGXy6O0PzwOHEasljMBpadABbPfH8b7oojH1I","level":"info","message":"auth send jwt","requestID":"e5dd6c6c9685af404a118cd03708cee1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e5dd6c6c9685af404a118cd03708cee1","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/2d4018ec-91a9-4d36-bdcc-3ecd02a56e83","requestID":"e5dd6c6c9685af404a118cd03708cee1"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":292,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:02Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":292,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.21587,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:02Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/2d4018ec-91a9-4d36-bdcc-3ecd02a56e83","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"e5dd6c6c9685af404a118cd03708cee1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/2d4018ec-91a9-4d36-bdcc-3ecd02a56e83","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377882,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4Mn0.kJaRa0iGXy6O0PzwOHEasljMBpadABbPfH8b7oojH1I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e5dd6c6c9685af404a118cd03708cee1","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2d4018ec-91a9-4d36-bdcc-3ecd02a56e83"},"level":"info","message":"Attempting to finish experiment","requestID":"e5dd6c6c9685af404a118cd03708cee1"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"812e7f20-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":293,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:02Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":293,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.17045,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:02Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/6893d7c1-212d-4992-adcd-1f2126284bdb","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"812e7f20-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:http://localhost/peerconnections/6893d7c1-212d-4992-adcd-1f2126284bdb","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377882,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4Mn0.kJaRa0iGXy6O0PzwOHEasljMBpadABbPfH8b7oojH1I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"812e7f20-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/6893d7c1-212d-4992-adcd-1f2126284bdb","device":"bf2aed00-b5f0-45e1-9167-68e637ba418f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"8ea54db5-6039-4c67-a874-7b57f71589bb","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":"8ea54db5-6039-4c67-a874-7b57f71589bb","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":"8ea54db5-6039-4c67-a874-7b57f71589bb","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/6893d7c1-212d-4992-adcd-1f2126284bdb' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/6893d7c1-212d-4992-adcd-1f2126284bdb' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6893d7c1-212d-4992-adcd-1f2126284bdb","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6893d7c1-212d-4992-adcd-1f2126284bdb': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6893d7c1-212d-4992-adcd-1f2126284bdb","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"dbe16773-d4ce-4092-8c2a-019a377a84f6","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377882.151031} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"82cd4472-09e9-489b-b05a-4f87ac4d48ae","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377882.1512077} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3e4096b64cad9af9d50c3353fa614c53","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"812e7f20-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3e4096b64cad9af9d50c3353fa614c53","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2da22f6fd598dfa2357e11a512c16f19","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/bf2aed00-b5f0-45e1-9167-68e637ba418f"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/8ea54db5-6039-4c67-a874-7b57f71589bb"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/6893d7c1-212d-4992-adcd-1f2126284bdb"}}},"level":"info","message":"received a callback","requestID":"3e4096b64cad9af9d50c3353fa614c53"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2da22f6fd598dfa2357e11a512c16f19","responseTime":1,"status":200,"url":"/auth"} 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":"connected","url":"http://localhost/devices/bf2aed00-b5f0-45e1-9167-68e637ba418f"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/8ea54db5-6039-4c67-a874-7b57f71589bb"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/6893d7c1-212d-4992-adcd-1f2126284bdb"}}},"level":"info","message":"received a callback","requestID":"2da22f6fd598dfa2357e11a512c16f19"} device-1 | {"data":{"peerconnection":"6893d7c1-212d-4992-adcd-1f2126284bdb","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"812e7f20-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"DELETE /peerconnections/6893d7c1-212d-4992-adcd-1f2126284bdb 204 44ms","method":"DELETE","requestID":"812e7f20-6a0a-11ef-9b41-2363e6623fc8","responseTime":44,"status":204,"url":"/peerconnections/6893d7c1-212d-4992-adcd-1f2126284bdb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2d4018ec-91a9-4d36-bdcc-3ecd02a56e83"},"level":"info","message":"Successfully finished experiment","requestID":"e5dd6c6c9685af404a118cd03708cee1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8137f500-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":294,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:02Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf2aed00-b5f0-45e1-9167-68e637ba418f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2cddad75-9f53-4321-9553-86d90317328b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377882.196793} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":294,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.83453,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bf2aed00-b5f0-45e1-9167-68e637ba418f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8137f500-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bf2aed00-b5f0-45e1-9167-68e637ba418f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8137f500-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8137f500-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/bf2aed00-b5f0-45e1-9167-68e637ba418f/signaling 200 10ms","method":"POST","requestID":"8137f500-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/devices/bf2aed00-b5f0-45e1-9167-68e637ba418f/signaling"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2d4018ec-91a9-4d36-bdcc-3ecd02a56e83': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2d4018ec-91a9-4d36-bdcc-3ecd02a56e83","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"93e7207f-55bd-40b2-8dee-ab9d80293e6d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377882.2037117} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8139f0d0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8ee04d9b-ad97-4197-b099-39c626b2e0cd","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377882.204186} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"e5dd6c6c9685af404a118cd03708cee1","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":295,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:02Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea54db5-6039-4c67-a874-7b57f71589bb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7295ae83-90ac-46d2-8c2d-d7b41a753747","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377882.211797} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":295,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.096222,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ea54db5-6039-4c67-a874-7b57f71589bb","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8139f0d0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ea54db5-6039-4c67-a874-7b57f71589bb","object_type":"device","rebac_allow":false,"scope_allow":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":"8139f0d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8139f0d0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/8ea54db5-6039-4c67-a874-7b57f71589bb/signaling 200 14ms","method":"POST","requestID":"8139f0d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":14,"status":200,"url":"/devices/8ea54db5-6039-4c67-a874-7b57f71589bb/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/2d4018ec-91a9-4d36-bdcc-3ecd02a56e83","requestID":"e5dd6c6c9685af404a118cd03708cee1"} gateway-1 | {"time_local":"03/Sep/2024:15:38:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/2d4018ec-91a9-4d36-bdcc-3ecd02a56e83 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.154","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e5dd6c6c9685af404a118cd03708cee1"} experiment-1 | {"level":"info","message":"DELETE /experiments/2d4018ec-91a9-4d36-bdcc-3ecd02a56e83 204 150ms","method":"DELETE","requestID":"e5dd6c6c9685af404a118cd03708cee1","responseTime":150,"status":204,"url":"/experiments/2d4018ec-91a9-4d36-bdcc-3ecd02a56e83"} gateway-1 | {"time_local":"03/Sep/2024:15:38:02 +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.438","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"90f6dde05d3728fba710974ae17f383f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 109ms","method":"POST","requestID":"3e4096b64cad9af9d50c3353fa614c53","responseTime":109,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.115","http_referrer":"","http_user_agent":"node-fetch","requestID":"3e4096b64cad9af9d50c3353fa614c53"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 109ms","method":"POST","requestID":"2da22f6fd598dfa2357e11a512c16f19","responseTime":109,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.115","http_referrer":"","http_user_agent":"node-fetch","requestID":"2da22f6fd598dfa2357e11a512c16f19"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4Mn0.kJaRa0iGXy6O0PzwOHEasljMBpadABbPfH8b7oojH1I","level":"info","message":"auth send jwt","requestID":"e1a6655fe8842bd3e28d6de861179394"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e1a6655fe8842bd3e28d6de861179394","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e1a6655fe8842bd3e28d6de861179394"} gateway-1 | {"time_local":"03/Sep/2024:15:38:02 +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":"983267765ff45dd15b2c83809de55fcf"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":296,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:02Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":296,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.863032,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:02Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"e1a6655fe8842bd3e28d6de861179394","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377882,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4Mn0.kJaRa0iGXy6O0PzwOHEasljMBpadABbPfH8b7oojH1I"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e1a6655fe8842bd3e28d6de861179394","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/8ea54db5-6039-4c67-a874-7b57f71589bb' 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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa48e51-5339-45b5-a8aa-0ef1837e7c24","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9405c18e-127f-44dd-9109-d00f980bc86f","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377882.2896178} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e1a6655fe8842bd3e28d6de861179394","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/bf2aed00-b5f0-45e1-9167-68e637ba418f' 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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5e37c9ae-4a03-4b68-ac8c-55082d752d30","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377882.2948384} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e1a6655fe8842bd3e28d6de861179394","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa48e51-5339-45b5-a8aa-0ef1837e7c24","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"60947749-261a-4413-83a4-3994548f93d7","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377882.3036356} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"70e23d93-aab1-4026-a32c-ce5a1ca7e1fe","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377882.3039815} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"e1a6655fe8842bd3e28d6de861179394","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa48e51-5339-45b5-a8aa-0ef1837e7c24","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa48e51-5339-45b5-a8aa-0ef1837e7c24","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:02.303610196Z"}]},"request_id":"94c2ea5b-916d-47da-98a3-316233be21aa","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377882.308415} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e1a6655fe8842bd3e28d6de861179394","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e1a6655fe8842bd3e28d6de861179394"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"e1a6655fe8842bd3e28d6de861179394","responseTime":41,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"03/Sep/2024:15:38:02 +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":"e1a6655fe8842bd3e28d6de861179394"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4Mn0.kJaRa0iGXy6O0PzwOHEasljMBpadABbPfH8b7oojH1I","level":"info","message":"auth send jwt","requestID":"dc2be367b1c550309b5a9785e9ed3fbc"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"dc2be367b1c550309b5a9785e9ed3fbc","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"dc2be367b1c550309b5a9785e9ed3fbc"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":297,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:02Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":297,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.731413,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:02Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"dc2be367b1c550309b5a9785e9ed3fbc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377882,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4Mn0.kJaRa0iGXy6O0PzwOHEasljMBpadABbPfH8b7oojH1I"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"dc2be367b1c550309b5a9785e9ed3fbc","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68422053-e87f-4ef9-b09f-b9ed568eb0b7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2de18186-03fe-4816-ae5d-5a66f89c5901","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377882.3383753} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"dc2be367b1c550309b5a9785e9ed3fbc","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cb274d67-f119-4c60-978c-1b26603b6851","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377882.3431218} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"dc2be367b1c550309b5a9785e9ed3fbc","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68422053-e87f-4ef9-b09f-b9ed568eb0b7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"27cc9756-ed8f-494c-9e15-2b6a1cefa2f9","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377882.3537273} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3f0c8e8e-66df-4a52-843b-d4c11a06a6a4","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377882.3538678} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"dc2be367b1c550309b5a9785e9ed3fbc","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68422053-e87f-4ef9-b09f-b9ed568eb0b7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68422053-e87f-4ef9-b09f-b9ed568eb0b7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:02.353702855Z"}]},"request_id":"29d470e4-f9dc-4051-abb9-30e5581fd097","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377882.3582351} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"dc2be367b1c550309b5a9785e9ed3fbc","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"dc2be367b1c550309b5a9785e9ed3fbc"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"dc2be367b1c550309b5a9785e9ed3fbc","responseTime":44,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"03/Sep/2024:15:38:02 +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":"dc2be367b1c550309b5a9785e9ed3fbc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4Mn0.kJaRa0iGXy6O0PzwOHEasljMBpadABbPfH8b7oojH1I","level":"info","message":"auth send jwt","requestID":"dd24cea5ec2f94af178dfba9188a74c2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"dd24cea5ec2f94af178dfba9188a74c2","responseTime":4,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4Mn0.kJaRa0iGXy6O0PzwOHEasljMBpadABbPfH8b7oojH1I","level":"info","message":"auth send jwt","requestID":"24e06e47536ca18fcc6ecd85559e81fa"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"dd24cea5ec2f94af178dfba9188a74c2"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"24e06e47536ca18fcc6ecd85559e81fa","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"24e06e47536ca18fcc6ecd85559e81fa"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":298,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:02Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":298,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.783656,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:02Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":299,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:02Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"dd24cea5ec2f94af178dfba9188a74c2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377882,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4Mn0.kJaRa0iGXy6O0PzwOHEasljMBpadABbPfH8b7oojH1I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"dd24cea5ec2f94af178dfba9188a74c2","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":299,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.930576,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:02Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"24e06e47536ca18fcc6ecd85559e81fa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377882,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4Mn0.kJaRa0iGXy6O0PzwOHEasljMBpadABbPfH8b7oojH1I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"24e06e47536ca18fcc6ecd85559e81fa","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68422053-e87f-4ef9-b09f-b9ed568eb0b7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68422053-e87f-4ef9-b09f-b9ed568eb0b7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:02.353702855Z"}]},"request_id":"f0d03d73-c2b2-4597-8a2f-6e98661f0737","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377882.8096871} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"dd24cea5ec2f94af178dfba9188a74c2","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa48e51-5339-45b5-a8aa-0ef1837e7c24","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa48e51-5339-45b5-a8aa-0ef1837e7c24","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:02.303610196Z"}]},"request_id":"f4ef74ac-722e-4869-bcb8-28134da88070","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377882.8109126} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"24e06e47536ca18fcc6ecd85559e81fa","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"20cf6dc2-805e-4aaa-a9b9-db91cd39e8ac","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377882.8149152} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"dd24cea5ec2f94af178dfba9188a74c2","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"651878d3-c149-4859-b2ca-9b8c58ed8eff","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377882.8164907} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"24e06e47536ca18fcc6ecd85559e81fa","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa48e51-5339-45b5-a8aa-0ef1837e7c24","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa48e51-5339-45b5-a8aa-0ef1837e7c24","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:02.303610196Z"}]},"request_id":"8091e048-6f5e-406a-83a4-2b30dc075eb9","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377882.8200169} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"24e06e47536ca18fcc6ecd85559e81fa","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"24e06e47536ca18fcc6ecd85559e81fa"} device-1 | {"level":"info","message":"PATCH /devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24 200 23ms","method":"PATCH","requestID":"24e06e47536ca18fcc6ecd85559e81fa","responseTime":23,"status":200,"url":"/devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24"} gateway-1 | {"time_local":"03/Sep/2024:15:38:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.030","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"24e06e47536ca18fcc6ecd85559e81fa"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4Mn0.kJaRa0iGXy6O0PzwOHEasljMBpadABbPfH8b7oojH1I","level":"info","message":"auth send jwt","requestID":"7a7b3332e24e8baeab3eae2ac6094133"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7a7b3332e24e8baeab3eae2ac6094133","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"7a7b3332e24e8baeab3eae2ac6094133"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68422053-e87f-4ef9-b09f-b9ed568eb0b7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68422053-e87f-4ef9-b09f-b9ed568eb0b7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:02.353702855Z"}]},"request_id":"9ec375b1-8c31-45a8-a8a4-2a9cedb7f27f","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377882.8306563} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"dd24cea5ec2f94af178dfba9188a74c2","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":300,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:02Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":300,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.708711,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:02Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"dd24cea5ec2f94af178dfba9188a74c2"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7a7b3332e24e8baeab3eae2ac6094133","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377882,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4Mn0.kJaRa0iGXy6O0PzwOHEasljMBpadABbPfH8b7oojH1I"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7a7b3332e24e8baeab3eae2ac6094133","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"03/Sep/2024:15:38:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.040","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"dd24cea5ec2f94af178dfba9188a74c2"} device-1 | {"level":"info","message":"PATCH /devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7 200 35ms","method":"PATCH","requestID":"dd24cea5ec2f94af178dfba9188a74c2","responseTime":35,"status":200,"url":"/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4Mn0.kJaRa0iGXy6O0PzwOHEasljMBpadABbPfH8b7oojH1I","level":"info","message":"auth send jwt","requestID":"4ec84a04c8a84a996133fa1171dd0bce"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4ec84a04c8a84a996133fa1171dd0bce","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"4ec84a04c8a84a996133fa1171dd0bce"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":301,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:02Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":301,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.667329,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:02Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"4ec84a04c8a84a996133fa1171dd0bce","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377882,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4Mn0.kJaRa0iGXy6O0PzwOHEasljMBpadABbPfH8b7oojH1I"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4ec84a04c8a84a996133fa1171dd0bce","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"7a7b3332e24e8baeab3eae2ac6094133"} gateway-1 | {"time_local":"03/Sep/2024:15:38:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.020","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"7a7b3332e24e8baeab3eae2ac6094133"} device-1 | {"level":"info","message":"POST /devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24/websocket 200 16ms","method":"POST","requestID":"7a7b3332e24e8baeab3eae2ac6094133","responseTime":16,"status":200,"url":"/devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"4ec84a04c8a84a996133fa1171dd0bce"} device-1 | {"level":"info","message":"POST /devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7/websocket 200 16ms","method":"POST","requestID":"4ec84a04c8a84a996133fa1171dd0bce","responseTime":16,"status":200,"url":"/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7/websocket"} gateway-1 | {"time_local":"03/Sep/2024:15:38:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.019","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"4ec84a04c8a84a996133fa1171dd0bce"} device-1 | {"level":"info","message":"device 'http://localhost/devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4Mn0.kJaRa0iGXy6O0PzwOHEasljMBpadABbPfH8b7oojH1I","level":"info","message":"auth send jwt","requestID":"30a05497e524885277f537d499baf78f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"30a05497e524885277f537d499baf78f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"30a05497e524885277f537d499baf78f"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":302,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:02Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":302,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.213091,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"30a05497e524885277f537d499baf78f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377882,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4Mn0.kJaRa0iGXy6O0PzwOHEasljMBpadABbPfH8b7oojH1I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"30a05497e524885277f537d499baf78f","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa48e51-5339-45b5-a8aa-0ef1837e7c24","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa48e51-5339-45b5-a8aa-0ef1837e7c24","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:02.303610196Z"}]},"request_id":"20696de9-afac-463d-9602-7fbc0f7bb8f4","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377882.893455} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"30a05497e524885277f537d499baf78f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"30a05497e524885277f537d499baf78f"} gateway-1 | {"time_local":"03/Sep/2024:15:38:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24? 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":"30a05497e524885277f537d499baf78f"} device-1 | {"level":"info","message":"GET /devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24? 200 13ms","method":"GET","requestID":"30a05497e524885277f537d499baf78f","responseTime":13,"status":200,"url":"/devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4Mn0.kJaRa0iGXy6O0PzwOHEasljMBpadABbPfH8b7oojH1I","level":"info","message":"auth send jwt","requestID":"7535500467baaf7f53ed858de111e7d6"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"7535500467baaf7f53ed858de111e7d6","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7535500467baaf7f53ed858de111e7d6"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":303,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:02Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":303,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.30039,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7535500467baaf7f53ed858de111e7d6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377882,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4Mn0.kJaRa0iGXy6O0PzwOHEasljMBpadABbPfH8b7oojH1I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7535500467baaf7f53ed858de111e7d6","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68422053-e87f-4ef9-b09f-b9ed568eb0b7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68422053-e87f-4ef9-b09f-b9ed568eb0b7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:02.353702855Z"}]},"request_id":"d971f1f0-8de3-4e51-abd5-6c4114172d6c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377882.9131875} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7535500467baaf7f53ed858de111e7d6","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7535500467baaf7f53ed858de111e7d6"} gateway-1 | {"time_local":"03/Sep/2024:15:38:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7? 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":"7535500467baaf7f53ed858de111e7d6"} device-1 | {"level":"info","message":"GET /devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7? 200 13ms","method":"GET","requestID":"7535500467baaf7f53ed858de111e7d6","responseTime":13,"status":200,"url":"/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4Mn0.kJaRa0iGXy6O0PzwOHEasljMBpadABbPfH8b7oojH1I","level":"info","message":"auth send jwt","requestID":"da8e0cdb4bc0b1ef52108e3d6ceb7f38"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"da8e0cdb4bc0b1ef52108e3d6ceb7f38","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"da8e0cdb4bc0b1ef52108e3d6ceb7f38"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":304,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:02Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":304,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.861631,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:02Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"da8e0cdb4bc0b1ef52108e3d6ceb7f38","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377882,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4Mn0.kJaRa0iGXy6O0PzwOHEasljMBpadABbPfH8b7oojH1I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"da8e0cdb4bc0b1ef52108e3d6ceb7f38","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/98568c09-e885-42a8-acbb-c323fbbadcd4"},"level":"info","message":"Attempting to run experiment","requestID":"da8e0cdb4bc0b1ef52108e3d6ceb7f38"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/98568c09-e885-42a8-acbb-c323fbbadcd4"},"level":"info","message":"Attempting to book experiment","requestID":"da8e0cdb4bc0b1ef52108e3d6ceb7f38"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/98568c09-e885-42a8-acbb-c323fbbadcd4"},"level":"info","message":"Successfully booked experiment","requestID":"da8e0cdb4bc0b1ef52108e3d6ceb7f38"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"81ae5d80-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"81ae8490-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":305,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:02Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":305,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.441029,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:02Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":306,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"81ae5d80-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377882,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4Mn0.kJaRa0iGXy6O0PzwOHEasljMBpadABbPfH8b7oojH1I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"81ae5d80-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":306,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.999939,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"81ae8490-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377882,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4Mn0.kJaRa0iGXy6O0PzwOHEasljMBpadABbPfH8b7oojH1I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"81ae8490-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa48e51-5339-45b5-a8aa-0ef1837e7c24","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa48e51-5339-45b5-a8aa-0ef1837e7c24","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:02.303610196Z"}]},"request_id":"f08e642f-7c58-45c0-bd13-eeb7c9976bae","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377882.9776301} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"81ae5d80-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68422053-e87f-4ef9-b09f-b9ed568eb0b7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68422053-e87f-4ef9-b09f-b9ed568eb0b7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:02.353702855Z"}]},"request_id":"491f4b01-886a-46a8-8cd5-9011edd0c6af","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377882.9789374} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"81ae8490-6a0a-11ef-9b41-2363e6623fc8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"81ae5d80-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24? 200 15ms","method":"GET","requestID":"81ae5d80-6a0a-11ef-9b41-2363e6623fc8","responseTime":15,"status":200,"url":"/devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"81ae8490-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7? 200 15ms","method":"GET","requestID":"81ae8490-6a0a-11ef-9b41-2363e6623fc8","responseTime":15,"status":200,"url":"/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/98568c09-e885-42a8-acbb-c323fbbadcd4"},"level":"info","message":"Setting up experiment","requestID":"da8e0cdb4bc0b1ef52108e3d6ceb7f38"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/98568c09-e885-42a8-acbb-c323fbbadcd4"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"da8e0cdb4bc0b1ef52108e3d6ceb7f38"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/98568c09-e885-42a8-acbb-c323fbbadcd4"},"level":"info","message":"Successfully locked booking for experiment","requestID":"da8e0cdb4bc0b1ef52108e3d6ceb7f38"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/98568c09-e885-42a8-acbb-c323fbbadcd4"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"da8e0cdb4bc0b1ef52108e3d6ceb7f38"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/98568c09-e885-42a8-acbb-c323fbbadcd4"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"da8e0cdb4bc0b1ef52108e3d6ceb7f38"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/98568c09-e885-42a8-acbb-c323fbbadcd4"},"level":"info","message":"Attempting to update booking for experiment","requestID":"da8e0cdb4bc0b1ef52108e3d6ceb7f38"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/98568c09-e885-42a8-acbb-c323fbbadcd4"},"level":"info","message":"Successfully updated booking for experiment","requestID":"da8e0cdb4bc0b1ef52108e3d6ceb7f38"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/98568c09-e885-42a8-acbb-c323fbbadcd4"},"level":"info","message":"Successfully set up experiment","requestID":"da8e0cdb4bc0b1ef52108e3d6ceb7f38"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"81b9cf30-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"81b9f640-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"81ba4460-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":307,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:03Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":307,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.650885,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:03Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/98568c09-e885-42a8-acbb-c323fbbadcd4"},"level":"info","message":"Successfully running experiment","requestID":"da8e0cdb4bc0b1ef52108e3d6ceb7f38"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":308,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"81b9cf30-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377882,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4Mn0.kJaRa0iGXy6O0PzwOHEasljMBpadABbPfH8b7oojH1I"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"81b9cf30-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":308,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.021035,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:03Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":309,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"81b9f640-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377882,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4Mn0.kJaRa0iGXy6O0PzwOHEasljMBpadABbPfH8b7oojH1I"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"81b9f640-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa48e51-5339-45b5-a8aa-0ef1837e7c24","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cb1a521d-0b8f-4477-8a7d-5b08b91d7749","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377883.0552952} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68422053-e87f-4ef9-b09f-b9ed568eb0b7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68422053-e87f-4ef9-b09f-b9ed568eb0b7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:02.353702855Z"}]},"request_id":"aa22e59e-a6a0-41b8-b479-f28c55ac81a6","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377883.0573618} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":309,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.274974,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"81ba4460-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24","object_type":"device","rebac_allow":false,"scope_allow":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":"81ba4460-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"81b9f640-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa48e51-5339-45b5-a8aa-0ef1837e7c24","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa48e51-5339-45b5-a8aa-0ef1837e7c24","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:02.303610196Z"}]},"request_id":"8c35ca93-e3e2-4ac1-a56f-f3cfbeaf6eea","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377883.058603} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"81b9cf30-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"81ba4460-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24/signaling 200 23ms","method":"POST","requestID":"81ba4460-6a0a-11ef-9b41-2363e6623fc8","responseTime":23,"status":200,"url":"/devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"81b9f640-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7? 200 26ms","method":"GET","requestID":"81b9f640-6a0a-11ef-9b41-2363e6623fc8","responseTime":26,"status":200,"url":"/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"81b9cf30-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F98568c09-e885-42a8-acbb-c323fbbadcd4#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F98568c09-e885-42a8-acbb-c323fbbadcd4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"3ddc41a3-25e3-4781-befc-2ffa61acea86","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377883.0721924} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"efc43498-1a55-4f40-97c8-b68157a4159a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377883.0726135} device-1 | {"level":"info","message":"GET /devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24? 200 30ms","method":"GET","requestID":"81b9cf30-6a0a-11ef-9b41-2363e6623fc8","responseTime":30,"status":200,"url":"/devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"81be6310-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"da8e0cdb4bc0b1ef52108e3d6ceb7f38","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"81beb130-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":310,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:03Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68422053-e87f-4ef9-b09f-b9ed568eb0b7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2d7722f6-f5cb-46db-9047-a655d3fb28a3","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377883.0785747} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":310,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.10755,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:03Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":311,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"81be6310-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"81be6310-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa48e51-5339-45b5-a8aa-0ef1837e7c24","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0bc07b5e-be75-498b-b0da-417b061fddcc","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377883.0821233} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":311,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.339853,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:03Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/98568c09-e885-42a8-acbb-c323fbbadcd4","user":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"da8e0cdb4bc0b1ef52108e3d6ceb7f38"} gateway-1 | {"time_local":"03/Sep/2024:15:38:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"785","request_time":"0.165","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"da8e0cdb4bc0b1ef52108e3d6ceb7f38"} experiment-1 | {"level":"info","message":"POST /experiments? 201 160ms","method":"POST","requestID":"da8e0cdb4bc0b1ef52108e3d6ceb7f38","responseTime":160,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"81beb130-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"81beb130-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"81be6310-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7/signaling 200 13ms","method":"POST","requestID":"81be6310-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"81beb130-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24/signaling 200 13ms","method":"POST","requestID":"81beb130-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4M30.viHXYMtEPShvSLuoZj-GcW_NCZDgyy6c8Mtg0WMjaaY","level":"info","message":"auth send jwt","requestID":"3216d883ab70e9c4bcdedff7fb4b71f6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3216d883ab70e9c4bcdedff7fb4b71f6","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3216d883ab70e9c4bcdedff7fb4b71f6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"81c12230-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":312,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:03Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":312,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.919424,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:03Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":313,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"3216d883ab70e9c4bcdedff7fb4b71f6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377883,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4M30.viHXYMtEPShvSLuoZj-GcW_NCZDgyy6c8Mtg0WMjaaY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3216d883ab70e9c4bcdedff7fb4b71f6","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68422053-e87f-4ef9-b09f-b9ed568eb0b7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"264aecad-e1c5-4c1d-a81c-cb6d15c8bfe8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377883.0954247} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":313,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.561898,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"81c12230-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"81c12230-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa48e51-5339-45b5-a8aa-0ef1837e7c24","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa48e51-5339-45b5-a8aa-0ef1837e7c24","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:02.303610196Z"}]},"request_id":"906c02c6-7c58-4a19-bc82-c6e7081d74cc","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377883.098963} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"81c12230-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3216d883ab70e9c4bcdedff7fb4b71f6","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7/signaling 200 9ms","method":"POST","requestID":"81c12230-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/98568c09-e885-42a8-acbb-c323fbbadcd4"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"da8e0cdb4bc0b1ef52108e3d6ceb7f38"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/98568c09-e885-42a8-acbb-c323fbbadcd4"},"level":"info","message":"Building connection plan","requestID":"da8e0cdb4bc0b1ef52108e3d6ceb7f38"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"cfe33ade-4e47-48a3-9732-616c20a8a27a"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"c89c3412-c5c2-405e-8773-af5362d1f164"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/file","uuid":"9c0b87d9-7ff7-4b31-a200-b2822e6cd7cf"}]},"level":"info","message":"Built pairwise service configurations","requestID":"da8e0cdb4bc0b1ef52108e3d6ceb7f38"} 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/3fa48e51-5339-45b5-a8aa-0ef1837e7c24"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"da8e0cdb4bc0b1ef52108e3d6ceb7f38"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"81c2f6f0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3216d883ab70e9c4bcdedff7fb4b71f6"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":314,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:03Z"} gateway-1 | {"time_local":"03/Sep/2024:15:38:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24? 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":"3216d883ab70e9c4bcdedff7fb4b71f6"} device-1 | {"level":"info","message":"GET /devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24? 200 17ms","method":"GET","requestID":"3216d883ab70e9c4bcdedff7fb4b71f6","responseTime":17,"status":200,"url":"/devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24?"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":314,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.895702,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"81c2f6f0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377882,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4Mn0.kJaRa0iGXy6O0PzwOHEasljMBpadABbPfH8b7oojH1I"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"81c2f6f0-6a0a-11ef-9b41-2363e6623fc8","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4M30.viHXYMtEPShvSLuoZj-GcW_NCZDgyy6c8Mtg0WMjaaY","level":"info","message":"auth send jwt","requestID":"23738e7e3ca82f21ac340b1f92bcf19a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"23738e7e3ca82f21ac340b1f92bcf19a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"23738e7e3ca82f21ac340b1f92bcf19a"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":315,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:03Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":315,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.914166,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"23738e7e3ca82f21ac340b1f92bcf19a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377883,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4M30.viHXYMtEPShvSLuoZj-GcW_NCZDgyy6c8Mtg0WMjaaY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"23738e7e3ca82f21ac340b1f92bcf19a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","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%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"15b6aa4b-2eff-445e-be6b-b572a8f956df","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377883.1168664} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"610c4736-ce95-43df-87b4-065aedc63947","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377883.1175168} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"81c2f6f0-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68422053-e87f-4ef9-b09f-b9ed568eb0b7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68422053-e87f-4ef9-b09f-b9ed568eb0b7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:02.353702855Z"}]},"request_id":"71cdf543-1e98-4710-ab16-87f0bb7bb015","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377883.1216443} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"23738e7e3ca82f21ac340b1f92bcf19a","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"81c2f6f0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"81c2f6f0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/762521b9-bbe9-40a3-b7b7-26b6628863d4'","requestID":"81c2f6f0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/762521b9-bbe9-40a3-b7b7-26b6628863d4'","requestID":"81c2f6f0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"81c2f6f0-6a0a-11ef-9b41-2363e6623fc8"} 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":"81c2f6f0-6a0a-11ef-9b41-2363e6623fc8","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":"getDevicesByDeviceId succeeded","requestID":"23738e7e3ca82f21ac340b1f92bcf19a"} device-1 | {"level":"info","message":"GET /devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7? 200 20ms","method":"GET","requestID":"23738e7e3ca82f21ac340b1f92bcf19a","responseTime":20,"status":200,"url":"/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7?"} gateway-1 | {"time_local":"03/Sep/2024:15:38:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7? 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":"23738e7e3ca82f21ac340b1f92bcf19a"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"81c2f6f0-6a0a-11ef-9b41-2363e6623fc8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/98568c09-e885-42a8-acbb-c323fbbadcd4"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"da8e0cdb4bc0b1ef52108e3d6ceb7f38"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"81cba980-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":316,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:03Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa48e51-5339-45b5-a8aa-0ef1837e7c24","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7248b04f-140b-4a48-af91-27b99be330cd","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377883.16471} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":316,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.373025,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"81cba980-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"81cba980-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"81cba980-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24/signaling 200 9ms","method":"POST","requestID":"81cba980-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"81cd5730-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":317,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:03Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68422053-e87f-4ef9-b09f-b9ed568eb0b7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"37fcaf1f-c074-4619-96a4-53c4034f341d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377883.1754315} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":317,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.136709,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"81cd5730-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"81cd5730-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"81cd5730-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7/signaling 200 8ms","method":"POST","requestID":"81cd5730-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7/signaling"} device-1 | {"device":"68422053-e87f-4ef9-b09f-b9ed568eb0b7","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":"762521b9-bbe9-40a3-b7b7-26b6628863d4","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"3fa48e51-5339-45b5-a8aa-0ef1837e7c24","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":"762521b9-bbe9-40a3-b7b7-26b6628863d4","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"3fa48e51-5339-45b5-a8aa-0ef1837e7c24","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":"3fa48e51-5339-45b5-a8aa-0ef1837e7c24","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":"3fa48e51-5339-45b5-a8aa-0ef1837e7c24","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":"3fa48e51-5339-45b5-a8aa-0ef1837e7c24","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/762521b9-bbe9-40a3-b7b7-26b6628863d4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"762521b9-bbe9-40a3-b7b7-26b6628863d4","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f79bf9f16861b15771d82cd9401a6a64","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f79bf9f16861b15771d82cd9401a6a64","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":"connecting","url":"http://localhost/devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/762521b9-bbe9-40a3-b7b7-26b6628863d4"}}},"level":"info","message":"received a callback","requestID":"f79bf9f16861b15771d82cd9401a6a64"} device-1 | {"device":"68422053-e87f-4ef9-b09f-b9ed568eb0b7","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":"68422053-e87f-4ef9-b09f-b9ed568eb0b7","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":"68422053-e87f-4ef9-b09f-b9ed568eb0b7","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":"762521b9-bbe9-40a3-b7b7-26b6628863d4","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"f79bf9f16861b15771d82cd9401a6a64","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"f79bf9f16861b15771d82cd9401a6a64"} device-1 | {"device":"3fa48e51-5339-45b5-a8aa-0ef1837e7c24","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":"68422053-e87f-4ef9-b09f-b9ed568eb0b7","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":"68422053-e87f-4ef9-b09f-b9ed568eb0b7","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":"3fa48e51-5339-45b5-a8aa-0ef1837e7c24","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":"762521b9-bbe9-40a3-b7b7-26b6628863d4","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/762521b9-bbe9-40a3-b7b7-26b6628863d4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"762521b9-bbe9-40a3-b7b7-26b6628863d4","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b6afd31c5625b144f3e5e909099b92e3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b6afd31c5625b144f3e5e909099b92e3","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/3fa48e51-5339-45b5-a8aa-0ef1837e7c24"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/762521b9-bbe9-40a3-b7b7-26b6628863d4"}}},"level":"info","message":"received a callback","requestID":"b6afd31c5625b144f3e5e909099b92e3"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"830959a0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":318,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:05Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F762521b9-bbe9-40a3-b7b7-26b6628863d4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ff3683a3-cb61-44d7-bb35-43439623edef","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377885.248338} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":318,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.024662,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/762521b9-bbe9-40a3-b7b7-26b6628863d4","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"830959a0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/762521b9-bbe9-40a3-b7b7-26b6628863d4","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":"830959a0-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"830959a0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /peerconnections/762521b9-bbe9-40a3-b7b7-26b6628863d4 200 11ms","method":"GET","requestID":"830959a0-6a0a-11ef-9b41-2363e6623fc8","responseTime":11,"status":200,"url":"/peerconnections/762521b9-bbe9-40a3-b7b7-26b6628863d4"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 39ms","method":"POST","requestID":"b6afd31c5625b144f3e5e909099b92e3","responseTime":39,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.042","http_referrer":"","http_user_agent":"node-fetch","requestID":"b6afd31c5625b144f3e5e909099b92e3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"830e62b0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":319,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:05Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa48e51-5339-45b5-a8aa-0ef1837e7c24","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"daf6a6ba-e13e-4da4-a936-3754043e1b62","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377885.2800403} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":319,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.81716,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"830e62b0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"830e62b0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"830e62b0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24/signaling 200 9ms","method":"POST","requestID":"830e62b0-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8310aca0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":320,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:05Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68422053-e87f-4ef9-b09f-b9ed568eb0b7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5f381d0b-0656-44ee-b7f0-446d41230d31","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377885.2959132} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":320,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.355519,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8310aca0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8310aca0-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8310aca0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7/signaling 200 12ms","method":"POST","requestID":"8310aca0-6a0a-11ef-9b41-2363e6623fc8","responseTime":12,"status":200,"url":"/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4NX0.0QYl_baP2-X6BpSvwF63ocrLS24aphize9nWDIu9eN4","level":"info","message":"auth send jwt","requestID":"2aa02d4019dec0a0cf7ef147edb4d094"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2aa02d4019dec0a0cf7ef147edb4d094","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/98568c09-e885-42a8-acbb-c323fbbadcd4","requestID":"2aa02d4019dec0a0cf7ef147edb4d094"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":321,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:05Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":321,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.092866,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/98568c09-e885-42a8-acbb-c323fbbadcd4","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"2aa02d4019dec0a0cf7ef147edb4d094","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/98568c09-e885-42a8-acbb-c323fbbadcd4","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377885,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4NX0.0QYl_baP2-X6BpSvwF63ocrLS24aphize9nWDIu9eN4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2aa02d4019dec0a0cf7ef147edb4d094","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/98568c09-e885-42a8-acbb-c323fbbadcd4","requestID":"2aa02d4019dec0a0cf7ef147edb4d094"} gateway-1 | {"time_local":"03/Sep/2024:15:38:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/98568c09-e885-42a8-acbb-c323fbbadcd4 HTTP/1.1","status": "200","body_bytes_sent":"858","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2aa02d4019dec0a0cf7ef147edb4d094"} experiment-1 | {"level":"info","message":"GET /experiments/98568c09-e885-42a8-acbb-c323fbbadcd4 200 18ms","method":"GET","requestID":"2aa02d4019dec0a0cf7ef147edb4d094","responseTime":18,"status":200,"url":"/experiments/98568c09-e885-42a8-acbb-c323fbbadcd4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4NX0.0QYl_baP2-X6BpSvwF63ocrLS24aphize9nWDIu9eN4","level":"info","message":"auth send jwt","requestID":"7c9cc08d763a08627af22e16631a5a4b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7c9cc08d763a08627af22e16631a5a4b","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/98568c09-e885-42a8-acbb-c323fbbadcd4","requestID":"7c9cc08d763a08627af22e16631a5a4b"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":322,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:05Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":322,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.185664,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:05Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/98568c09-e885-42a8-acbb-c323fbbadcd4","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7c9cc08d763a08627af22e16631a5a4b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/98568c09-e885-42a8-acbb-c323fbbadcd4","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377885,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4NX0.0QYl_baP2-X6BpSvwF63ocrLS24aphize9nWDIu9eN4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7c9cc08d763a08627af22e16631a5a4b","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/98568c09-e885-42a8-acbb-c323fbbadcd4"},"level":"info","message":"Attempting to finish experiment","requestID":"7c9cc08d763a08627af22e16631a5a4b"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"832df8a0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":323,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:05Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":323,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.148185,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:05Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/762521b9-bbe9-40a3-b7b7-26b6628863d4","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"832df8a0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:http://localhost/peerconnections/762521b9-bbe9-40a3-b7b7-26b6628863d4","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377885,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4NX0.0QYl_baP2-X6BpSvwF63ocrLS24aphize9nWDIu9eN4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"832df8a0-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"device":"3fa48e51-5339-45b5-a8aa-0ef1837e7c24","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":"3fa48e51-5339-45b5-a8aa-0ef1837e7c24","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":"3fa48e51-5339-45b5-a8aa-0ef1837e7c24","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":"68422053-e87f-4ef9-b09f-b9ed568eb0b7","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":"68422053-e87f-4ef9-b09f-b9ed568eb0b7","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":"68422053-e87f-4ef9-b09f-b9ed568eb0b7","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/762521b9-bbe9-40a3-b7b7-26b6628863d4' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/762521b9-bbe9-40a3-b7b7-26b6628863d4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"762521b9-bbe9-40a3-b7b7-26b6628863d4","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F762521b9-bbe9-40a3-b7b7-26b6628863d4': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F762521b9-bbe9-40a3-b7b7-26b6628863d4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"f72f5629-61bb-48df-93ce-ed5487905c86","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377885.5035675} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d855e410-ec54-4c07-a9ca-162bcb308828","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377885.5037274} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9025cf0da90614e87a3c3e9f997bc559","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"832df8a0-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"9025cf0da90614e87a3c3e9f997bc559","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3d517d572b3dce0f7b316396197be377","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/3fa48e51-5339-45b5-a8aa-0ef1837e7c24"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/762521b9-bbe9-40a3-b7b7-26b6628863d4"}}},"level":"info","message":"received a callback","requestID":"9025cf0da90614e87a3c3e9f997bc559"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3d517d572b3dce0f7b316396197be377","responseTime":1,"status":200,"url":"/auth"} 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/3fa48e51-5339-45b5-a8aa-0ef1837e7c24"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/762521b9-bbe9-40a3-b7b7-26b6628863d4"}}},"level":"info","message":"received a callback","requestID":"3d517d572b3dce0f7b316396197be377"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"832df8a0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"DELETE /peerconnections/762521b9-bbe9-40a3-b7b7-26b6628863d4 204 44ms","method":"DELETE","requestID":"832df8a0-6a0a-11ef-9b41-2363e6623fc8","responseTime":44,"status":204,"url":"/peerconnections/762521b9-bbe9-40a3-b7b7-26b6628863d4"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/98568c09-e885-42a8-acbb-c323fbbadcd4"},"level":"info","message":"Successfully finished experiment","requestID":"7c9cc08d763a08627af22e16631a5a4b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"833858e0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":324,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:05Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa48e51-5339-45b5-a8aa-0ef1837e7c24","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"21de995e-23d9-4d8e-b80b-d1f7e7b78555","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377885.5554986} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":324,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.485167,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"833858e0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"833858e0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"833858e0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24/signaling 200 11ms","method":"POST","requestID":"833858e0-6a0a-11ef-9b41-2363e6623fc8","responseTime":11,"status":200,"url":"/devices/3fa48e51-5339-45b5-a8aa-0ef1837e7c24/signaling"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F98568c09-e885-42a8-acbb-c323fbbadcd4': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F98568c09-e885-42a8-acbb-c323fbbadcd4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"d4c230d5-7feb-4355-b1ee-a6559e9c7205","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377885.5633337} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b0b94d23-7b79-44f4-b069-fbcd0e3885b2","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377885.5635293} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"833a54b0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"7c9cc08d763a08627af22e16631a5a4b","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":325,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:05Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68422053-e87f-4ef9-b09f-b9ed568eb0b7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8bed6f05-5362-4bac-a367-08890a0a83e8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377885.5688455} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":325,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.047401,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"833a54b0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"833a54b0-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"833a54b0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7/signaling 200 13ms","method":"POST","requestID":"833a54b0-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/98568c09-e885-42a8-acbb-c323fbbadcd4","requestID":"7c9cc08d763a08627af22e16631a5a4b"} gateway-1 | {"time_local":"03/Sep/2024:15:38:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/98568c09-e885-42a8-acbb-c323fbbadcd4 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":"7c9cc08d763a08627af22e16631a5a4b"} gateway-1 | {"time_local":"03/Sep/2024:15:38:05 +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.793","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"d6191ccce932224a7540bc1c11ab44b3"} gateway-1 | {"time_local":"03/Sep/2024:15:38:05 +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.783","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"e62c2fb85ff4d4e254e610d58dd4e988"} experiment-1 | {"level":"info","message":"DELETE /experiments/98568c09-e885-42a8-acbb-c323fbbadcd4 204 176ms","method":"DELETE","requestID":"7c9cc08d763a08627af22e16631a5a4b","responseTime":176,"status":204,"url":"/experiments/98568c09-e885-42a8-acbb-c323fbbadcd4"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 138ms","method":"POST","requestID":"9025cf0da90614e87a3c3e9f997bc559","responseTime":138,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.141","http_referrer":"","http_user_agent":"node-fetch","requestID":"9025cf0da90614e87a3c3e9f997bc559"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 137ms","method":"POST","requestID":"3d517d572b3dce0f7b316396197be377","responseTime":137,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.141","http_referrer":"","http_user_agent":"node-fetch","requestID":"3d517d572b3dce0f7b316396197be377"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4NX0.0QYl_baP2-X6BpSvwF63ocrLS24aphize9nWDIu9eN4","level":"info","message":"auth send jwt","requestID":"6b4ddc0363ca0153669574ca1e0df67d"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"6b4ddc0363ca0153669574ca1e0df67d","responseTime":6,"status":200,"url":"/auth"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/68422053-e87f-4ef9-b09f-b9ed568eb0b7' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"6b4ddc0363ca0153669574ca1e0df67d"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":326,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:05Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":326,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.194318,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:05Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"6b4ddc0363ca0153669574ca1e0df67d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377885,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4NX0.0QYl_baP2-X6BpSvwF63ocrLS24aphize9nWDIu9eN4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6b4ddc0363ca0153669574ca1e0df67d","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/3fa48e51-5339-45b5-a8aa-0ef1837e7c24' 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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67102f64-dbb8-4d54-bb41-7d138e0d1773","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4b7049c9-87df-4f6a-9d6f-9af188c750b7","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377885.6753385} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6b4ddc0363ca0153669574ca1e0df67d","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4042fadd-ac8a-49b2-8f4d-6e081fa96eb2","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377885.6823874} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"6b4ddc0363ca0153669574ca1e0df67d","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67102f64-dbb8-4d54-bb41-7d138e0d1773","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"c6d03835-9c7f-4c36-a7c5-24fe717ef9ae","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377885.6930435} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6e588481-eea3-40e8-a7fc-181a7ad43ba2","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377885.6934104} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"6b4ddc0363ca0153669574ca1e0df67d","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67102f64-dbb8-4d54-bb41-7d138e0d1773","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67102f64-dbb8-4d54-bb41-7d138e0d1773","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:05.693019829Z"}]},"request_id":"683b2171-4030-42e8-b9d0-23011c434bb1","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377885.698811} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6b4ddc0363ca0153669574ca1e0df67d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"6b4ddc0363ca0153669574ca1e0df67d"} gateway-1 | {"time_local":"03/Sep/2024:15:38:05 +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":"6b4ddc0363ca0153669574ca1e0df67d"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"6b4ddc0363ca0153669574ca1e0df67d","responseTime":49,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4NX0.0QYl_baP2-X6BpSvwF63ocrLS24aphize9nWDIu9eN4","level":"info","message":"auth send jwt","requestID":"35c192c2141787421d4334b511b3ac0f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"35c192c2141787421d4334b511b3ac0f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"35c192c2141787421d4334b511b3ac0f"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":327,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:05Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":327,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.113052,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:05Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"35c192c2141787421d4334b511b3ac0f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377885,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4NX0.0QYl_baP2-X6BpSvwF63ocrLS24aphize9nWDIu9eN4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"35c192c2141787421d4334b511b3ac0f","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb3f2c98-58fb-44a6-923f-116b4b65f7c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a0004fbd-a4d1-456d-8cd5-4bc4f366d832","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377885.7271867} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"35c192c2141787421d4334b511b3ac0f","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b3a6bec9-c106-4c6b-bf42-c747db66241d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377885.7335641} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"35c192c2141787421d4334b511b3ac0f","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb3f2c98-58fb-44a6-923f-116b4b65f7c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"0f9fe804-ddc5-48dc-aa5f-69ac69726254","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377885.7509494} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7775822a-ad5b-455f-b6fe-f225e524645f","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377885.751068} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"35c192c2141787421d4334b511b3ac0f","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb3f2c98-58fb-44a6-923f-116b4b65f7c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb3f2c98-58fb-44a6-923f-116b4b65f7c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:05.750929839Z"}]},"request_id":"76af2ac2-b0ab-448e-83e0-a9bd852bd11a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377885.7558084} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"35c192c2141787421d4334b511b3ac0f","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"35c192c2141787421d4334b511b3ac0f"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"35c192c2141787421d4334b511b3ac0f","responseTime":49,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"03/Sep/2024:15:38:05 +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":"35c192c2141787421d4334b511b3ac0f"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ba19747c8d9c9d35aa1aee3b97aa1f9f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ba19747c8d9c9d35aa1aee3b97aa1f9f","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4/websocket 200 1ms","method":"OPTIONS","requestID":"ba19747c8d9c9d35aa1aee3b97aa1f9f","responseTime":1,"status":200,"url":"/devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4/websocket"} gateway-1 | {"time_local":"03/Sep/2024:15:38:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4/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":"ba19747c8d9c9d35aa1aee3b97aa1f9f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4N30.cTMTnUf9GSGOXQpqtobDilBO4yntdFnLzyvAfKP5WIo","level":"info","message":"auth send jwt","requestID":"550d474e4803039a59f5b3fc012ee9c2"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"550d474e4803039a59f5b3fc012ee9c2","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"550d474e4803039a59f5b3fc012ee9c2"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"04b5cc1ca90a3797ccef2e7c3b6ac845","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":328,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:07Z"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"04b5cc1ca90a3797ccef2e7c3b6ac845","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":328,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.866283,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:07Z"} gateway-1 | {"time_local":"03/Sep/2024:15:38:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/67102f64-dbb8-4d54-bb41-7d138e0d1773/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":"04b5cc1ca90a3797ccef2e7c3b6ac845"} device-1 | {"level":"info","message":"OPTIONS /devices/67102f64-dbb8-4d54-bb41-7d138e0d1773/websocket 200 1ms","method":"OPTIONS","requestID":"04b5cc1ca90a3797ccef2e7c3b6ac845","responseTime":1,"status":200,"url":"/devices/67102f64-dbb8-4d54-bb41-7d138e0d1773/websocket"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"550d474e4803039a59f5b3fc012ee9c2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377887,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4N30.cTMTnUf9GSGOXQpqtobDilBO4yntdFnLzyvAfKP5WIo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"550d474e4803039a59f5b3fc012ee9c2","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4N30.cTMTnUf9GSGOXQpqtobDilBO4yntdFnLzyvAfKP5WIo","level":"info","message":"auth send jwt","requestID":"2f9529d15da7057b799695c9fc312c66"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2f9529d15da7057b799695c9fc312c66","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"2f9529d15da7057b799695c9fc312c66"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":329,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:07Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":329,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.748151,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:07Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/67102f64-dbb8-4d54-bb41-7d138e0d1773","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"2f9529d15da7057b799695c9fc312c66","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/67102f64-dbb8-4d54-bb41-7d138e0d1773","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377887,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4N30.cTMTnUf9GSGOXQpqtobDilBO4yntdFnLzyvAfKP5WIo"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"550d474e4803039a59f5b3fc012ee9c2"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2f9529d15da7057b799695c9fc312c66","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"03/Sep/2024:15:38:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4/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":"550d474e4803039a59f5b3fc012ee9c2"} device-1 | {"level":"info","message":"POST /devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4/websocket 200 20ms","method":"POST","requestID":"550d474e4803039a59f5b3fc012ee9c2","responseTime":20,"status":200,"url":"/devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"2f9529d15da7057b799695c9fc312c66"} device-1 | {"level":"info","message":"POST /devices/67102f64-dbb8-4d54-bb41-7d138e0d1773/websocket 200 17ms","method":"POST","requestID":"2f9529d15da7057b799695c9fc312c66","responseTime":17,"status":200,"url":"/devices/67102f64-dbb8-4d54-bb41-7d138e0d1773/websocket"} gateway-1 | {"time_local":"03/Sep/2024:15:38:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/67102f64-dbb8-4d54-bb41-7d138e0d1773/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.022","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"2f9529d15da7057b799695c9fc312c66"} device-1 | {"level":"info","message":"device 'http://localhost/devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/67102f64-dbb8-4d54-bb41-7d138e0d1773' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4N30.cTMTnUf9GSGOXQpqtobDilBO4yntdFnLzyvAfKP5WIo","level":"info","message":"auth send jwt","requestID":"ee8b1290f75669b5f672f19dee5c7ad2"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ee8b1290f75669b5f672f19dee5c7ad2","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ee8b1290f75669b5f672f19dee5c7ad2"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":330,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:07Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":330,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.710392,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/67102f64-dbb8-4d54-bb41-7d138e0d1773","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"ee8b1290f75669b5f672f19dee5c7ad2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/67102f64-dbb8-4d54-bb41-7d138e0d1773","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377887,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4N30.cTMTnUf9GSGOXQpqtobDilBO4yntdFnLzyvAfKP5WIo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ee8b1290f75669b5f672f19dee5c7ad2","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67102f64-dbb8-4d54-bb41-7d138e0d1773","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67102f64-dbb8-4d54-bb41-7d138e0d1773","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:05.693019829Z"}]},"request_id":"489b33d3-d8df-4076-b3c9-fc560dd3c25a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377887.8188653} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ee8b1290f75669b5f672f19dee5c7ad2","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ee8b1290f75669b5f672f19dee5c7ad2"} gateway-1 | {"time_local":"03/Sep/2024:15:38:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/67102f64-dbb8-4d54-bb41-7d138e0d1773? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ee8b1290f75669b5f672f19dee5c7ad2"} device-1 | {"level":"info","message":"GET /devices/67102f64-dbb8-4d54-bb41-7d138e0d1773? 200 12ms","method":"GET","requestID":"ee8b1290f75669b5f672f19dee5c7ad2","responseTime":12,"status":200,"url":"/devices/67102f64-dbb8-4d54-bb41-7d138e0d1773?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4N30.cTMTnUf9GSGOXQpqtobDilBO4yntdFnLzyvAfKP5WIo","level":"info","message":"auth send jwt","requestID":"4ba064cfb852b1f49456b6b0d39a781c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4ba064cfb852b1f49456b6b0d39a781c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4ba064cfb852b1f49456b6b0d39a781c"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":331,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:07Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":331,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.71995,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"4ba064cfb852b1f49456b6b0d39a781c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377887,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4N30.cTMTnUf9GSGOXQpqtobDilBO4yntdFnLzyvAfKP5WIo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4ba064cfb852b1f49456b6b0d39a781c","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb3f2c98-58fb-44a6-923f-116b4b65f7c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb3f2c98-58fb-44a6-923f-116b4b65f7c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:05.750929839Z"}]},"request_id":"1f66b5b5-a7ff-41ce-91ba-7152a421c75f","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377887.835869} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4ba064cfb852b1f49456b6b0d39a781c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4ba064cfb852b1f49456b6b0d39a781c"} device-1 | {"level":"info","message":"GET /devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4? 200 12ms","method":"GET","requestID":"4ba064cfb852b1f49456b6b0d39a781c","responseTime":12,"status":200,"url":"/devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4?"} gateway-1 | {"time_local":"03/Sep/2024:15:38:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4ba064cfb852b1f49456b6b0d39a781c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4N30.cTMTnUf9GSGOXQpqtobDilBO4yntdFnLzyvAfKP5WIo","level":"info","message":"auth send jwt","requestID":"cfe710d331eec5ea90b01237f99a4d5e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"cfe710d331eec5ea90b01237f99a4d5e","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"cfe710d331eec5ea90b01237f99a4d5e"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":332,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:07Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":332,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.174042,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:07Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"cfe710d331eec5ea90b01237f99a4d5e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377887,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4N30.cTMTnUf9GSGOXQpqtobDilBO4yntdFnLzyvAfKP5WIo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cfe710d331eec5ea90b01237f99a4d5e","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/465531b1-2723-4e0e-bdbb-607c4f1f9369"},"level":"info","message":"Attempting to run experiment","requestID":"cfe710d331eec5ea90b01237f99a4d5e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/465531b1-2723-4e0e-bdbb-607c4f1f9369"},"level":"info","message":"Attempting to book experiment","requestID":"cfe710d331eec5ea90b01237f99a4d5e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/465531b1-2723-4e0e-bdbb-607c4f1f9369"},"level":"info","message":"Successfully booked experiment","requestID":"cfe710d331eec5ea90b01237f99a4d5e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"84a02640-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"84a07460-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":333,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:07Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":334,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:07Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":333,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.727656,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/67102f64-dbb8-4d54-bb41-7d138e0d1773","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"84a02640-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/67102f64-dbb8-4d54-bb41-7d138e0d1773","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377887,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4N30.cTMTnUf9GSGOXQpqtobDilBO4yntdFnLzyvAfKP5WIo"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"84a02640-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":334,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.366085,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"84a07460-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377887,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4N30.cTMTnUf9GSGOXQpqtobDilBO4yntdFnLzyvAfKP5WIo"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"84a07460-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67102f64-dbb8-4d54-bb41-7d138e0d1773","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67102f64-dbb8-4d54-bb41-7d138e0d1773","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:05.693019829Z"}]},"request_id":"71d3631d-6722-44dd-bf43-e387a9f2d8be","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377887.9239545} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"84a02640-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb3f2c98-58fb-44a6-923f-116b4b65f7c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb3f2c98-58fb-44a6-923f-116b4b65f7c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:05.750929839Z"}]},"request_id":"aeb80ff3-485e-485c-9931-cf069cd5b74c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377887.925672} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"84a07460-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"84a02640-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/67102f64-dbb8-4d54-bb41-7d138e0d1773? 200 25ms","method":"GET","requestID":"84a02640-6a0a-11ef-9b41-2363e6623fc8","responseTime":25,"status":200,"url":"/devices/67102f64-dbb8-4d54-bb41-7d138e0d1773?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"84a07460-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4? 200 24ms","method":"GET","requestID":"84a07460-6a0a-11ef-9b41-2363e6623fc8","responseTime":24,"status":200,"url":"/devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/465531b1-2723-4e0e-bdbb-607c4f1f9369"},"level":"info","message":"Setting up experiment","requestID":"cfe710d331eec5ea90b01237f99a4d5e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/465531b1-2723-4e0e-bdbb-607c4f1f9369"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"cfe710d331eec5ea90b01237f99a4d5e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/465531b1-2723-4e0e-bdbb-607c4f1f9369"},"level":"info","message":"Successfully locked booking for experiment","requestID":"cfe710d331eec5ea90b01237f99a4d5e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/465531b1-2723-4e0e-bdbb-607c4f1f9369"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"cfe710d331eec5ea90b01237f99a4d5e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/465531b1-2723-4e0e-bdbb-607c4f1f9369"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"cfe710d331eec5ea90b01237f99a4d5e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/465531b1-2723-4e0e-bdbb-607c4f1f9369"},"level":"info","message":"Attempting to update booking for experiment","requestID":"cfe710d331eec5ea90b01237f99a4d5e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/465531b1-2723-4e0e-bdbb-607c4f1f9369"},"level":"info","message":"Successfully updated booking for experiment","requestID":"cfe710d331eec5ea90b01237f99a4d5e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/465531b1-2723-4e0e-bdbb-607c4f1f9369"},"level":"info","message":"Successfully set up experiment","requestID":"cfe710d331eec5ea90b01237f99a4d5e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"84ae5710-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"84aea530-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"84af1a60-6a0a-11ef-9b41-2363e6623fc8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/465531b1-2723-4e0e-bdbb-607c4f1f9369"},"level":"info","message":"Successfully running experiment","requestID":"cfe710d331eec5ea90b01237f99a4d5e"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":335,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:08Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":335,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.267632,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:08Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":336,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/67102f64-dbb8-4d54-bb41-7d138e0d1773","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"84ae5710-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/67102f64-dbb8-4d54-bb41-7d138e0d1773","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377887,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4N30.cTMTnUf9GSGOXQpqtobDilBO4yntdFnLzyvAfKP5WIo"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"84ae5710-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":336,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.227537,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:08Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":337,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"84aea530-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377887,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4N30.cTMTnUf9GSGOXQpqtobDilBO4yntdFnLzyvAfKP5WIo"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"84aea530-6a0a-11ef-9b41-2363e6623fc8","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":337,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.788967,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:08Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67102f64-dbb8-4d54-bb41-7d138e0d1773","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e4a02e2e-4bb8-41a4-9e03-cbeda1d0ab11","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377888.0170727} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/67102f64-dbb8-4d54-bb41-7d138e0d1773","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"84af1a60-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/67102f64-dbb8-4d54-bb41-7d138e0d1773","object_type":"device","rebac_allow":false,"scope_allow":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":"84af1a60-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"84af1a60-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/67102f64-dbb8-4d54-bb41-7d138e0d1773/signaling 200 22ms","method":"POST","requestID":"84af1a60-6a0a-11ef-9b41-2363e6623fc8","responseTime":22,"status":200,"url":"/devices/67102f64-dbb8-4d54-bb41-7d138e0d1773/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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb3f2c98-58fb-44a6-923f-116b4b65f7c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb3f2c98-58fb-44a6-923f-116b4b65f7c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:05.750929839Z"}]},"request_id":"818891c3-b763-449a-ac59-fbcc30761f7f","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377888.0266237} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"84aea530-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67102f64-dbb8-4d54-bb41-7d138e0d1773","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67102f64-dbb8-4d54-bb41-7d138e0d1773","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:05.693019829Z"}]},"request_id":"982f788d-58c6-4230-89a9-588dcd71fd1d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377888.0293791} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"84ae5710-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"84b33910-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F465531b1-2723-4e0e-bdbb-607c4f1f9369#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F465531b1-2723-4e0e-bdbb-607c4f1f9369","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"248852a6-61b2-4493-ae8b-0b320c4f84cf","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377888.0390482} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"84aea530-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a3a85f91-789e-407c-b27e-002155ead21c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377888.039481} device-1 | {"level":"info","message":"GET /devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4? 200 40ms","method":"GET","requestID":"84aea530-6a0a-11ef-9b41-2363e6623fc8","responseTime":40,"status":200,"url":"/devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"84ae5710-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/67102f64-dbb8-4d54-bb41-7d138e0d1773? 200 43ms","method":"GET","requestID":"84ae5710-6a0a-11ef-9b41-2363e6623fc8","responseTime":43,"status":200,"url":"/devices/67102f64-dbb8-4d54-bb41-7d138e0d1773?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 31ms","method":"POST","requestID":"cfe710d331eec5ea90b01237f99a4d5e","responseTime":31,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":338,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:08Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":338,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.713455,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:08Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb3f2c98-58fb-44a6-923f-116b4b65f7c4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7f094044-4a9e-46cf-80c6-9fbf8ea88941","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377888.0438366} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"84b33910-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4","object_type":"device","rebac_allow":false,"scope_allow":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":"84b33910-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"84b58300-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":339,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:08Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"84b33910-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4/signaling 200 24ms","method":"POST","requestID":"84b33910-6a0a-11ef-9b41-2363e6623fc8","responseTime":24,"status":200,"url":"/devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4/signaling"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67102f64-dbb8-4d54-bb41-7d138e0d1773","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8bbb15da-991c-4ad9-95d3-11ca6573b0df","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377888.057031} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":339,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.859546,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/67102f64-dbb8-4d54-bb41-7d138e0d1773","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"84b58300-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/67102f64-dbb8-4d54-bb41-7d138e0d1773","object_type":"device","rebac_allow":false,"scope_allow":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":"84b58300-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/465531b1-2723-4e0e-bdbb-607c4f1f9369","user":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"cfe710d331eec5ea90b01237f99a4d5e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"84b58300-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/67102f64-dbb8-4d54-bb41-7d138e0d1773/signaling 200 15ms","method":"POST","requestID":"84b58300-6a0a-11ef-9b41-2363e6623fc8","responseTime":15,"status":200,"url":"/devices/67102f64-dbb8-4d54-bb41-7d138e0d1773/signaling"} gateway-1 | {"time_local":"03/Sep/2024:15:38:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1287","request_time":"0.222","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cfe710d331eec5ea90b01237f99a4d5e"} experiment-1 | {"level":"info","message":"POST /experiments? 201 216ms","method":"POST","requestID":"cfe710d331eec5ea90b01237f99a4d5e","responseTime":216,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"84b89040-6a0a-11ef-9b41-2363e6623fc8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4OH0.wmqTxA9S_qF4PHcc3d1n0aJfNd5tcU4g68qqoBLKRfU","level":"info","message":"auth send jwt","requestID":"2dfc0fa86bd104ae42d75008596b203e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2dfc0fa86bd104ae42d75008596b203e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2dfc0fa86bd104ae42d75008596b203e"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":340,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:08Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":341,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:08Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb3f2c98-58fb-44a6-923f-116b4b65f7c4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8397d38e-0ded-47f2-903c-3caa4c791929","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377888.0740933} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":341,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.916129,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:08Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":340,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.126315,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/67102f64-dbb8-4d54-bb41-7d138e0d1773","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"2dfc0fa86bd104ae42d75008596b203e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/67102f64-dbb8-4d54-bb41-7d138e0d1773","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377888,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4OH0.wmqTxA9S_qF4PHcc3d1n0aJfNd5tcU4g68qqoBLKRfU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2dfc0fa86bd104ae42d75008596b203e","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"84b89040-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4","object_type":"device","rebac_allow":false,"scope_allow":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":"84b89040-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67102f64-dbb8-4d54-bb41-7d138e0d1773","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67102f64-dbb8-4d54-bb41-7d138e0d1773","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:05.693019829Z"}]},"request_id":"e3052a64-b2ef-401f-9620-d9a585288bd3","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377888.0807223} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"84b89040-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2dfc0fa86bd104ae42d75008596b203e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4/signaling 200 13ms","method":"POST","requestID":"84b89040-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/465531b1-2723-4e0e-bdbb-607c4f1f9369"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"cfe710d331eec5ea90b01237f99a4d5e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/465531b1-2723-4e0e-bdbb-607c4f1f9369"},"level":"info","message":"Building connection plan","requestID":"cfe710d331eec5ea90b01237f99a4d5e"} 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":"ef4f8e23-49b7-4f8d-acd6-bf550efc6b32"},{"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":"5d4c2e9e-ca72-4b9a-bc22-2da6930050e1"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"159d576c-4b35-4831-8efc-45844fb564c3"}]},"level":"info","message":"Built pairwise service configurations","requestID":"cfe710d331eec5ea90b01237f99a4d5e"} 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/67102f64-dbb8-4d54-bb41-7d138e0d1773"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/db3f2c98-58fb-44a6-923f-116b4b65f7c4"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"cfe710d331eec5ea90b01237f99a4d5e"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"84bb4f60-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2dfc0fa86bd104ae42d75008596b203e"} gateway-1 | {"time_local":"03/Sep/2024:15:38:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/67102f64-dbb8-4d54-bb41-7d138e0d1773? 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":"2dfc0fa86bd104ae42d75008596b203e"} device-1 | {"level":"info","message":"GET /devices/67102f64-dbb8-4d54-bb41-7d138e0d1773? 200 18ms","method":"GET","requestID":"2dfc0fa86bd104ae42d75008596b203e","responseTime":18,"status":200,"url":"/devices/67102f64-dbb8-4d54-bb41-7d138e0d1773?"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":342,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:08Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":342,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.222013,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:08Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4OH0.wmqTxA9S_qF4PHcc3d1n0aJfNd5tcU4g68qqoBLKRfU","level":"info","message":"auth send jwt","requestID":"4c3221733a7b9f4211b45615d85e384a"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"84bb4f60-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377887,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4N30.cTMTnUf9GSGOXQpqtobDilBO4yntdFnLzyvAfKP5WIo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"84bb4f60-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4c3221733a7b9f4211b45615d85e384a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4c3221733a7b9f4211b45615d85e384a"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":343,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:08Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":343,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.081625,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"4c3221733a7b9f4211b45615d85e384a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377888,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4OH0.wmqTxA9S_qF4PHcc3d1n0aJfNd5tcU4g68qqoBLKRfU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4c3221733a7b9f4211b45615d85e384a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb3f2c98-58fb-44a6-923f-116b4b65f7c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb3f2c98-58fb-44a6-923f-116b4b65f7c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:05.750929839Z"}]},"request_id":"477dcc0b-3591-4f73-85a2-1b19598e2919","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377888.1056693} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4c3221733a7b9f4211b45615d85e384a","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","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%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"a04d775b-3122-4c95-a803-7436c0de22d0","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377888.1069002} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"eddb5fb9-90be-4abd-834c-dd85b59bab4b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377888.1073043} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"84bb4f60-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4c3221733a7b9f4211b45615d85e384a"} gateway-1 | {"time_local":"03/Sep/2024:15:38:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4? 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":"4c3221733a7b9f4211b45615d85e384a"} device-1 | {"level":"info","message":"GET /devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4? 200 15ms","method":"GET","requestID":"4c3221733a7b9f4211b45615d85e384a","responseTime":15,"status":200,"url":"/devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"84bb4f60-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"84bb4f60-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/13ca1aa9-fbcf-4ba2-8ccc-0c82e5239d5e'","requestID":"84bb4f60-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/13ca1aa9-fbcf-4ba2-8ccc-0c82e5239d5e'","requestID":"84bb4f60-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"84bb4f60-6a0a-11ef-9b41-2363e6623fc8"} 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":"84bb4f60-6a0a-11ef-9b41-2363e6623fc8","responseTime":37,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"84bb4f60-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/13ca1aa9-fbcf-4ba2-8ccc-0c82e5239d5e","device":"67102f64-dbb8-4d54-bb41-7d138e0d1773","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/13ca1aa9-fbcf-4ba2-8ccc-0c82e5239d5e","device":"db3f2c98-58fb-44a6-923f-116b4b65f7c4","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/465531b1-2723-4e0e-bdbb-607c4f1f9369"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"cfe710d331eec5ea90b01237f99a4d5e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"84c5fdc0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":344,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:08Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67102f64-dbb8-4d54-bb41-7d138e0d1773","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"caea4f99-db75-405c-8cc6-f41c593d7319","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377888.1610644} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":344,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.898541,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:08Z"} device-1 | {"device":"db3f2c98-58fb-44a6-923f-116b4b65f7c4","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"db3f2c98-58fb-44a6-923f-116b4b65f7c4","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/67102f64-dbb8-4d54-bb41-7d138e0d1773","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"84c5fdc0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/67102f64-dbb8-4d54-bb41-7d138e0d1773","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"84c5fdc0-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"device":"67102f64-dbb8-4d54-bb41-7d138e0d1773","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"67102f64-dbb8-4d54-bb41-7d138e0d1773","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"84c5fdc0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/67102f64-dbb8-4d54-bb41-7d138e0d1773/signaling 200 12ms","method":"POST","requestID":"84c5fdc0-6a0a-11ef-9b41-2363e6623fc8","responseTime":12,"status":200,"url":"/devices/67102f64-dbb8-4d54-bb41-7d138e0d1773/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"84c820a0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":345,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:08Z"} device-1 | {"content":{"sdp":"v=0\r\no=- 8017888834353478070 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:h+Fu\r\na=ice-pwd:Mg1WAZzeHq1HuVmn51eqIWpR\r\na=ice-options:trickle\r\na=fingerprint:sha-256 DC:C9:89:BB:5E:77:2D:65:A9:8F:59:D8:65:23:18:27:67:04:1F:70:5F:48:BA:96:68:44:4B:02:7C:30:79:BE\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"db3f2c98-58fb-44a6-923f-116b4b65f7c4","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb3f2c98-58fb-44a6-923f-116b4b65f7c4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"17251587-9e03-4a92-99ab-6aed1dd36662","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377888.1751788} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":345,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.737697,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"84c820a0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"84c820a0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"84c820a0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4/signaling 200 10ms","method":"POST","requestID":"84c820a0-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 1420959590385211582 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:W2io\r\na=ice-pwd:tFVfPAMPptD7j9pa0D5gZwCr\r\na=ice-options:trickle\r\na=fingerprint:sha-256 F1:0D:59:19:A2:25:10:47:D1:63:54:41:E1:82:BD:8E:BD:2E:2A:6B:6E:25:05:8E:66:39:61:BA:53:4C:AA:08\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"67102f64-dbb8-4d54-bb41-7d138e0d1773","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:1724801438 1 udp 2113937151 61b5add9-1623-4386-a301-0e92ca7678f5.local 51237 typ host generation 0 ufrag W2io network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"67102f64-dbb8-4d54-bb41-7d138e0d1773","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3806530529 1 udp 1677729535 141.24.211.56 51237 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag W2io network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"67102f64-dbb8-4d54-bb41-7d138e0d1773","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/67102f64-dbb8-4d54-bb41-7d138e0d1773'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/67102f64-dbb8-4d54-bb41-7d138e0d1773'"} device-1 | {"content":{"candidate":"candidate:1066946778 1 udp 2113937151 05a5dd50-3224-4243-9516-bb355475cbd9.local 35020 typ host generation 0 ufrag h+Fu network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"db3f2c98-58fb-44a6-923f-116b4b65f7c4","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3149216421 1 udp 1677729535 141.24.211.56 35020 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag h+Fu network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"db3f2c98-58fb-44a6-923f-116b4b65f7c4","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/db3f2c98-58fb-44a6-923f-116b4b65f7c4'"} device-1 | {"device":"db3f2c98-58fb-44a6-923f-116b4b65f7c4","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"db3f2c98-58fb-44a6-923f-116b4b65f7c4","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"67102f64-dbb8-4d54-bb41-7d138e0d1773","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"67102f64-dbb8-4d54-bb41-7d138e0d1773","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/13ca1aa9-fbcf-4ba2-8ccc-0c82e5239d5e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"13ca1aa9-fbcf-4ba2-8ccc-0c82e5239d5e","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8b6610cc292178539df43d38c2db9f60","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"db3f2c98-58fb-44a6-923f-116b4b65f7c4","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8b6610cc292178539df43d38c2db9f60","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"67102f64-dbb8-4d54-bb41-7d138e0d1773","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/67102f64-dbb8-4d54-bb41-7d138e0d1773"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/db3f2c98-58fb-44a6-923f-116b4b65f7c4"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/13ca1aa9-fbcf-4ba2-8ccc-0c82e5239d5e"}}},"level":"info","message":"received a callback","requestID":"8b6610cc292178539df43d38c2db9f60"} device-1 | {"device":"67102f64-dbb8-4d54-bb41-7d138e0d1773","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"8b6610cc292178539df43d38c2db9f60","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"8b6610cc292178539df43d38c2db9f60"} device-1 | {"data":{"peerconnection":"13ca1aa9-fbcf-4ba2-8ccc-0c82e5239d5e","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"13ca1aa9-fbcf-4ba2-8ccc-0c82e5239d5e","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/13ca1aa9-fbcf-4ba2-8ccc-0c82e5239d5e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"13ca1aa9-fbcf-4ba2-8ccc-0c82e5239d5e","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f6fe9a5d27454113398793541812e702","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"f6fe9a5d27454113398793541812e702","responseTime":0,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/67102f64-dbb8-4d54-bb41-7d138e0d1773"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/db3f2c98-58fb-44a6-923f-116b4b65f7c4"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/13ca1aa9-fbcf-4ba2-8ccc-0c82e5239d5e"}}},"level":"info","message":"received a callback","requestID":"f6fe9a5d27454113398793541812e702"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"84d280e0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":346,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:08Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F13ca1aa9-fbcf-4ba2-8ccc-0c82e5239d5e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a3c74e82-e8fc-451e-a94c-57c40897f15a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377888.242098} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":346,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.095673,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/13ca1aa9-fbcf-4ba2-8ccc-0c82e5239d5e","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"84d280e0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/13ca1aa9-fbcf-4ba2-8ccc-0c82e5239d5e","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":"84d280e0-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"84d280e0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /peerconnections/13ca1aa9-fbcf-4ba2-8ccc-0c82e5239d5e 200 7ms","method":"GET","requestID":"84d280e0-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/peerconnections/13ca1aa9-fbcf-4ba2-8ccc-0c82e5239d5e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 34ms","method":"POST","requestID":"f6fe9a5d27454113398793541812e702","responseTime":34,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.036","http_referrer":"","http_user_agent":"node-fetch","requestID":"f6fe9a5d27454113398793541812e702"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"84d714c0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":347,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:08Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67102f64-dbb8-4d54-bb41-7d138e0d1773","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d3587574-e38c-4e46-9f20-e59624eb0ea1","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377888.2720397} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":347,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.119995,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/67102f64-dbb8-4d54-bb41-7d138e0d1773","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"84d714c0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/67102f64-dbb8-4d54-bb41-7d138e0d1773","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"84d714c0-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"84d714c0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/67102f64-dbb8-4d54-bb41-7d138e0d1773/signaling 200 8ms","method":"POST","requestID":"84d714c0-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/devices/67102f64-dbb8-4d54-bb41-7d138e0d1773/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"84d89b60-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":348,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:08Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb3f2c98-58fb-44a6-923f-116b4b65f7c4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9f9bb46e-dafc-41fb-b309-0a74122a13e8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377888.2822433} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":348,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.119307,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"84d89b60-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"84d89b60-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"84d89b60-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4/signaling 200 9ms","method":"POST","requestID":"84d89b60-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4OH0.wmqTxA9S_qF4PHcc3d1n0aJfNd5tcU4g68qqoBLKRfU","level":"info","message":"auth send jwt","requestID":"fb375e7aa813431b4e2c942d45dff667"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"fb375e7aa813431b4e2c942d45dff667","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/465531b1-2723-4e0e-bdbb-607c4f1f9369","requestID":"fb375e7aa813431b4e2c942d45dff667"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":349,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:08Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":349,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.676743,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/465531b1-2723-4e0e-bdbb-607c4f1f9369","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"fb375e7aa813431b4e2c942d45dff667","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/465531b1-2723-4e0e-bdbb-607c4f1f9369","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377888,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4OH0.wmqTxA9S_qF4PHcc3d1n0aJfNd5tcU4g68qqoBLKRfU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"fb375e7aa813431b4e2c942d45dff667","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/465531b1-2723-4e0e-bdbb-607c4f1f9369","requestID":"fb375e7aa813431b4e2c942d45dff667"} gateway-1 | {"time_local":"03/Sep/2024:15:38:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/465531b1-2723-4e0e-bdbb-607c4f1f9369 HTTP/1.1","status": "200","body_bytes_sent":"1360","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fb375e7aa813431b4e2c942d45dff667"} experiment-1 | {"level":"info","message":"GET /experiments/465531b1-2723-4e0e-bdbb-607c4f1f9369 200 12ms","method":"GET","requestID":"fb375e7aa813431b4e2c942d45dff667","responseTime":12,"status":200,"url":"/experiments/465531b1-2723-4e0e-bdbb-607c4f1f9369"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4OH0.wmqTxA9S_qF4PHcc3d1n0aJfNd5tcU4g68qqoBLKRfU","level":"info","message":"auth send jwt","requestID":"f20a14ccfd2361e1ae1187bcd649ba65"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f20a14ccfd2361e1ae1187bcd649ba65","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/465531b1-2723-4e0e-bdbb-607c4f1f9369","requestID":"f20a14ccfd2361e1ae1187bcd649ba65"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":350,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:08Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":350,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.032197,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:08Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/465531b1-2723-4e0e-bdbb-607c4f1f9369","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"f20a14ccfd2361e1ae1187bcd649ba65","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/465531b1-2723-4e0e-bdbb-607c4f1f9369","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377888,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4OH0.wmqTxA9S_qF4PHcc3d1n0aJfNd5tcU4g68qqoBLKRfU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f20a14ccfd2361e1ae1187bcd649ba65","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/465531b1-2723-4e0e-bdbb-607c4f1f9369"},"level":"info","message":"Attempting to finish experiment","requestID":"f20a14ccfd2361e1ae1187bcd649ba65"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"84e370d0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":351,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:08Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":351,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.721801,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:08Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/13ca1aa9-fbcf-4ba2-8ccc-0c82e5239d5e","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"84e370d0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:http://localhost/peerconnections/13ca1aa9-fbcf-4ba2-8ccc-0c82e5239d5e","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377888,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4OH0.wmqTxA9S_qF4PHcc3d1n0aJfNd5tcU4g68qqoBLKRfU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"84e370d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/13ca1aa9-fbcf-4ba2-8ccc-0c82e5239d5e","device":"67102f64-dbb8-4d54-bb41-7d138e0d1773","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/13ca1aa9-fbcf-4ba2-8ccc-0c82e5239d5e","device":"db3f2c98-58fb-44a6-923f-116b4b65f7c4","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/13ca1aa9-fbcf-4ba2-8ccc-0c82e5239d5e' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/13ca1aa9-fbcf-4ba2-8ccc-0c82e5239d5e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"13ca1aa9-fbcf-4ba2-8ccc-0c82e5239d5e","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fd6c05e3-b807-4db4-9fee-1b8d9a9340df","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377888.369463} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e38a7a1c12b9bac7532891b476a6997e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F13ca1aa9-fbcf-4ba2-8ccc-0c82e5239d5e': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F13ca1aa9-fbcf-4ba2-8ccc-0c82e5239d5e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"fe91fcc1-bb34-443a-921e-49555707ca4f","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377888.369929} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e38a7a1c12b9bac7532891b476a6997e","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"84e370d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"eef2e90a684d615720c5d131f04344dc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"closed","url":"http://localhost/devices/67102f64-dbb8-4d54-bb41-7d138e0d1773"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/db3f2c98-58fb-44a6-923f-116b4b65f7c4"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/13ca1aa9-fbcf-4ba2-8ccc-0c82e5239d5e"}}},"level":"info","message":"received a callback","requestID":"e38a7a1c12b9bac7532891b476a6997e"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"eef2e90a684d615720c5d131f04344dc","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":"closed","url":"http://localhost/devices/67102f64-dbb8-4d54-bb41-7d138e0d1773"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/db3f2c98-58fb-44a6-923f-116b4b65f7c4"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/13ca1aa9-fbcf-4ba2-8ccc-0c82e5239d5e"}}},"level":"info","message":"received a callback","requestID":"eef2e90a684d615720c5d131f04344dc"} device-1 | {"data":{"peerconnection":"13ca1aa9-fbcf-4ba2-8ccc-0c82e5239d5e","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"84e370d0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"DELETE /peerconnections/13ca1aa9-fbcf-4ba2-8ccc-0c82e5239d5e 204 38ms","method":"DELETE","requestID":"84e370d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":38,"status":204,"url":"/peerconnections/13ca1aa9-fbcf-4ba2-8ccc-0c82e5239d5e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/465531b1-2723-4e0e-bdbb-607c4f1f9369"},"level":"info","message":"Successfully finished experiment","requestID":"f20a14ccfd2361e1ae1187bcd649ba65"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"84ed0dc0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":352,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:08Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67102f64-dbb8-4d54-bb41-7d138e0d1773","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3944efb5-3a7e-4005-b58f-6fcda04f24c9","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377888.4188807} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":352,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.824637,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/67102f64-dbb8-4d54-bb41-7d138e0d1773","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"84ed0dc0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/67102f64-dbb8-4d54-bb41-7d138e0d1773","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"84ed0dc0-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F465531b1-2723-4e0e-bdbb-607c4f1f9369': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F465531b1-2723-4e0e-bdbb-607c4f1f9369","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"79b3fbcf-f2aa-4296-b6b2-51ee9e56f212","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377888.4228263} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"84ed0dc0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/67102f64-dbb8-4d54-bb41-7d138e0d1773/signaling 200 12ms","method":"POST","requestID":"84ed0dc0-6a0a-11ef-9b41-2363e6623fc8","responseTime":12,"status":200,"url":"/devices/67102f64-dbb8-4d54-bb41-7d138e0d1773/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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e0b71a9e-7fa8-4c40-8642-1b5d02909511","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377888.423284} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"f20a14ccfd2361e1ae1187bcd649ba65","responseTime":14,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"84ef30a0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":353,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:08Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb3f2c98-58fb-44a6-923f-116b4b65f7c4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9b70f625-e159-4f9c-afae-e6c720540649","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377888.4308608} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":353,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.541037,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"84ef30a0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"84ef30a0-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"84ef30a0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4/signaling 200 10ms","method":"POST","requestID":"84ef30a0-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/465531b1-2723-4e0e-bdbb-607c4f1f9369","requestID":"f20a14ccfd2361e1ae1187bcd649ba65"} gateway-1 | {"time_local":"03/Sep/2024:15:38:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/465531b1-2723-4e0e-bdbb-607c4f1f9369 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.155","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f20a14ccfd2361e1ae1187bcd649ba65"} experiment-1 | {"level":"info","message":"DELETE /experiments/465531b1-2723-4e0e-bdbb-607c4f1f9369 204 155ms","method":"DELETE","requestID":"f20a14ccfd2361e1ae1187bcd649ba65","responseTime":155,"status":204,"url":"/experiments/465531b1-2723-4e0e-bdbb-607c4f1f9369"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 121ms","method":"POST","requestID":"e38a7a1c12b9bac7532891b476a6997e","responseTime":121,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.126","http_referrer":"","http_user_agent":"node-fetch","requestID":"e38a7a1c12b9bac7532891b476a6997e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 122ms","method":"POST","requestID":"eef2e90a684d615720c5d131f04344dc","responseTime":122,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4OH0.wmqTxA9S_qF4PHcc3d1n0aJfNd5tcU4g68qqoBLKRfU","level":"info","message":"auth send jwt","requestID":"8b465f7f5a496e9538c25368e12285fc"} gateway-1 | {"time_local":"03/Sep/2024:15:38:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.127","http_referrer":"","http_user_agent":"node-fetch","requestID":"eef2e90a684d615720c5d131f04344dc"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"8b465f7f5a496e9538c25368e12285fc","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"8b465f7f5a496e9538c25368e12285fc"} gateway-1 | {"time_local":"03/Sep/2024:15:38:08 +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.719","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"4e993c75d59df5a8d5710890ca81dfd1"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":354,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:08Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":354,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":3.737566,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:08Z"} gateway-1 | {"time_local":"03/Sep/2024:15:38:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2888","request_time":"0.715","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"96abed05b4b17838680cf19e599da12b"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8b465f7f5a496e9538c25368e12285fc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377888,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4OH0.wmqTxA9S_qF4PHcc3d1n0aJfNd5tcU4g68qqoBLKRfU"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"8b465f7f5a496e9538c25368e12285fc","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/67102f64-dbb8-4d54-bb41-7d138e0d1773' 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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1809e880-aeae-4cfd-b589-20204ad38740","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e9d52253-c849-4c7c-80f2-05fb30270f8c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377888.5150492} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8b465f7f5a496e9538c25368e12285fc","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"15654f50-f39e-4699-9b90-f523e646dbe8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377888.5207171} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"8b465f7f5a496e9538c25368e12285fc","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/db3f2c98-58fb-44a6-923f-116b4b65f7c4' closed"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1809e880-aeae-4cfd-b589-20204ad38740","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"6b23db19-acd8-4ebd-882e-a65e01c0d894","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377888.5326476} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"254345ac-06ac-4f40-9f39-84651415e83e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377888.5329177} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"8b465f7f5a496e9538c25368e12285fc","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1809e880-aeae-4cfd-b589-20204ad38740","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1809e880-aeae-4cfd-b589-20204ad38740","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:08.532626251Z"}]},"request_id":"480c5816-31fd-458e-9255-67d9042c3550","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377888.5369918} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"8b465f7f5a496e9538c25368e12285fc","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"8b465f7f5a496e9538c25368e12285fc"} gateway-1 | {"time_local":"03/Sep/2024:15:38:08 +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":"8b465f7f5a496e9538c25368e12285fc"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"8b465f7f5a496e9538c25368e12285fc","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4OH0.wmqTxA9S_qF4PHcc3d1n0aJfNd5tcU4g68qqoBLKRfU","level":"info","message":"auth send jwt","requestID":"48af071168c58e6734f55ef00ab3bf79"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"48af071168c58e6734f55ef00ab3bf79","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"48af071168c58e6734f55ef00ab3bf79"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":355,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:08Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":355,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.750462,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:08Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"48af071168c58e6734f55ef00ab3bf79","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377888,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg4OH0.wmqTxA9S_qF4PHcc3d1n0aJfNd5tcU4g68qqoBLKRfU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"48af071168c58e6734f55ef00ab3bf79","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1adb9e61-e007-4cc5-97a9-01f31d00ce66","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"70606cbd-68da-458e-bb28-39e0f787b697","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377888.559392} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"48af071168c58e6734f55ef00ab3bf79","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"05afaae6-76da-4c2b-a3a2-8a667e2158f7","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377888.5630226} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"48af071168c58e6734f55ef00ab3bf79","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1adb9e61-e007-4cc5-97a9-01f31d00ce66","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"91cd9250-2a47-4e62-a079-2b822ce42b60","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377888.5706673} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d52d6954-401a-47a7-bbe1-a81e8b3fc75e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377888.5707877} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"48af071168c58e6734f55ef00ab3bf79","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1adb9e61-e007-4cc5-97a9-01f31d00ce66","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1adb9e61-e007-4cc5-97a9-01f31d00ce66","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:08.570648619Z"}]},"request_id":"6898c0af-53a3-49d4-aa37-1b6d6520f1a5","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377888.5748498} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"48af071168c58e6734f55ef00ab3bf79","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"48af071168c58e6734f55ef00ab3bf79"} gateway-1 | {"time_local":"03/Sep/2024:15:38:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.036","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"48af071168c58e6734f55ef00ab3bf79"} device-1 | {"level":"info","message":"POST /devices? 201 32ms","method":"POST","requestID":"48af071168c58e6734f55ef00ab3bf79","responseTime":32,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8cd49ed1dfb481675acc7907611dc3eb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8cd49ed1dfb481675acc7907611dc3eb","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"03/Sep/2024:15:38:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/1809e880-aeae-4cfd-b589-20204ad38740/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":"8cd49ed1dfb481675acc7907611dc3eb"} device-1 | {"level":"info","message":"OPTIONS /devices/1809e880-aeae-4cfd-b589-20204ad38740/websocket 200 1ms","method":"OPTIONS","requestID":"8cd49ed1dfb481675acc7907611dc3eb","responseTime":1,"status":200,"url":"/devices/1809e880-aeae-4cfd-b589-20204ad38740/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5MH0.IY-vjU_MyGZuiZ3abyfH8g0S1L68ikJUWQ29EIu8mB4","level":"info","message":"auth send jwt","requestID":"e8d3463e87f37b448f2edbd3599e922c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e8d3463e87f37b448f2edbd3599e922c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e8d3463e87f37b448f2edbd3599e922c"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":356,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:10Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":356,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.13765,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:10Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1809e880-aeae-4cfd-b589-20204ad38740","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"e8d3463e87f37b448f2edbd3599e922c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/1809e880-aeae-4cfd-b589-20204ad38740","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377890,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5MH0.IY-vjU_MyGZuiZ3abyfH8g0S1L68ikJUWQ29EIu8mB4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e8d3463e87f37b448f2edbd3599e922c","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"56cfbaf3f301f75e62d4db03ce90d11e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"56cfbaf3f301f75e62d4db03ce90d11e","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"03/Sep/2024:15:38:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66/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":"56cfbaf3f301f75e62d4db03ce90d11e"} device-1 | {"level":"info","message":"OPTIONS /devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66/websocket 200 1ms","method":"OPTIONS","requestID":"56cfbaf3f301f75e62d4db03ce90d11e","responseTime":1,"status":200,"url":"/devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e8d3463e87f37b448f2edbd3599e922c"} gateway-1 | {"time_local":"03/Sep/2024:15:38:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/1809e880-aeae-4cfd-b589-20204ad38740/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":"e8d3463e87f37b448f2edbd3599e922c"} device-1 | {"level":"info","message":"POST /devices/1809e880-aeae-4cfd-b589-20204ad38740/websocket 200 23ms","method":"POST","requestID":"e8d3463e87f37b448f2edbd3599e922c","responseTime":23,"status":200,"url":"/devices/1809e880-aeae-4cfd-b589-20204ad38740/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5MH0.IY-vjU_MyGZuiZ3abyfH8g0S1L68ikJUWQ29EIu8mB4","level":"info","message":"auth send jwt","requestID":"b7efe7d89541fa81b03cd9ed5c1cfb7d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b7efe7d89541fa81b03cd9ed5c1cfb7d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"b7efe7d89541fa81b03cd9ed5c1cfb7d"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":357,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:10Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":357,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.130471,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:10Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"b7efe7d89541fa81b03cd9ed5c1cfb7d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377890,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5MH0.IY-vjU_MyGZuiZ3abyfH8g0S1L68ikJUWQ29EIu8mB4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b7efe7d89541fa81b03cd9ed5c1cfb7d","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"device 'http://localhost/devices/1809e880-aeae-4cfd-b589-20204ad38740' connected"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"b7efe7d89541fa81b03cd9ed5c1cfb7d"} device-1 | {"level":"info","message":"POST /devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66/websocket 200 28ms","method":"POST","requestID":"b7efe7d89541fa81b03cd9ed5c1cfb7d","responseTime":28,"status":200,"url":"/devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66/websocket"} gateway-1 | {"time_local":"03/Sep/2024:15:38:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.033","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b7efe7d89541fa81b03cd9ed5c1cfb7d"} device-1 | {"level":"info","message":"device 'http://localhost/devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5MH0.IY-vjU_MyGZuiZ3abyfH8g0S1L68ikJUWQ29EIu8mB4","level":"info","message":"auth send jwt","requestID":"e5ed7ead2475fcd78403468c837869a7"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e5ed7ead2475fcd78403468c837869a7","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e5ed7ead2475fcd78403468c837869a7"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":358,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:10Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":358,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.319452,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1809e880-aeae-4cfd-b589-20204ad38740","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"e5ed7ead2475fcd78403468c837869a7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/1809e880-aeae-4cfd-b589-20204ad38740","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377890,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5MH0.IY-vjU_MyGZuiZ3abyfH8g0S1L68ikJUWQ29EIu8mB4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e5ed7ead2475fcd78403468c837869a7","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1809e880-aeae-4cfd-b589-20204ad38740","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1809e880-aeae-4cfd-b589-20204ad38740","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:08.532626251Z"}]},"request_id":"e002ac2d-5b2b-44aa-b322-9aeddf162049","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377890.6863875} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e5ed7ead2475fcd78403468c837869a7","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e5ed7ead2475fcd78403468c837869a7"} gateway-1 | {"time_local":"03/Sep/2024:15:38:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1809e880-aeae-4cfd-b589-20204ad38740? 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":"e5ed7ead2475fcd78403468c837869a7"} device-1 | {"level":"info","message":"GET /devices/1809e880-aeae-4cfd-b589-20204ad38740? 200 18ms","method":"GET","requestID":"e5ed7ead2475fcd78403468c837869a7","responseTime":18,"status":200,"url":"/devices/1809e880-aeae-4cfd-b589-20204ad38740?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5MH0.IY-vjU_MyGZuiZ3abyfH8g0S1L68ikJUWQ29EIu8mB4","level":"info","message":"auth send jwt","requestID":"a0c18cbc3a991f4a4de918e058d556a5"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a0c18cbc3a991f4a4de918e058d556a5","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a0c18cbc3a991f4a4de918e058d556a5"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":359,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:10Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":359,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.326457,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a0c18cbc3a991f4a4de918e058d556a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377890,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5MH0.IY-vjU_MyGZuiZ3abyfH8g0S1L68ikJUWQ29EIu8mB4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a0c18cbc3a991f4a4de918e058d556a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1adb9e61-e007-4cc5-97a9-01f31d00ce66","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1adb9e61-e007-4cc5-97a9-01f31d00ce66","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:08.570648619Z"}]},"request_id":"d573342c-5211-4ef0-94c0-4709eb4d408a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377890.7121534} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a0c18cbc3a991f4a4de918e058d556a5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a0c18cbc3a991f4a4de918e058d556a5"} gateway-1 | {"time_local":"03/Sep/2024:15:38:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66? 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":"a0c18cbc3a991f4a4de918e058d556a5"} device-1 | {"level":"info","message":"GET /devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66? 200 18ms","method":"GET","requestID":"a0c18cbc3a991f4a4de918e058d556a5","responseTime":18,"status":200,"url":"/devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5MH0.IY-vjU_MyGZuiZ3abyfH8g0S1L68ikJUWQ29EIu8mB4","level":"info","message":"auth send jwt","requestID":"f1645a3dcfde99f4a8c3a637cf6c03eb"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f1645a3dcfde99f4a8c3a637cf6c03eb","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"f1645a3dcfde99f4a8c3a637cf6c03eb"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":360,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:10Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":360,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.273943,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:10Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"f1645a3dcfde99f4a8c3a637cf6c03eb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377890,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5MH0.IY-vjU_MyGZuiZ3abyfH8g0S1L68ikJUWQ29EIu8mB4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f1645a3dcfde99f4a8c3a637cf6c03eb","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aff23c9d-4a13-467b-9749-9296976e3663"},"level":"info","message":"Attempting to run experiment","requestID":"f1645a3dcfde99f4a8c3a637cf6c03eb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aff23c9d-4a13-467b-9749-9296976e3663"},"level":"info","message":"Attempting to book experiment","requestID":"f1645a3dcfde99f4a8c3a637cf6c03eb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aff23c9d-4a13-467b-9749-9296976e3663"},"level":"info","message":"Successfully booked experiment","requestID":"f1645a3dcfde99f4a8c3a637cf6c03eb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"86559e70-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8655ec90-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":361,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:10Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":361,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.293166,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:10Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":362,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1809e880-aeae-4cfd-b589-20204ad38740","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"86559e70-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/1809e880-aeae-4cfd-b589-20204ad38740","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377890,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5MH0.IY-vjU_MyGZuiZ3abyfH8g0S1L68ikJUWQ29EIu8mB4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"86559e70-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":362,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.40976,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8655ec90-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377890,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5MH0.IY-vjU_MyGZuiZ3abyfH8g0S1L68ikJUWQ29EIu8mB4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8655ec90-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1809e880-aeae-4cfd-b589-20204ad38740","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1809e880-aeae-4cfd-b589-20204ad38740","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:08.532626251Z"}]},"request_id":"a3f94cc7-7c8e-41a6-919e-9511f04bb823","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377890.788567} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"86559e70-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1adb9e61-e007-4cc5-97a9-01f31d00ce66","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1adb9e61-e007-4cc5-97a9-01f31d00ce66","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:08.570648619Z"}]},"request_id":"747a5c57-5c54-4549-aa6e-ba681a28f09d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377890.790505} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8655ec90-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"86559e70-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/1809e880-aeae-4cfd-b589-20204ad38740? 200 23ms","method":"GET","requestID":"86559e70-6a0a-11ef-9b41-2363e6623fc8","responseTime":23,"status":200,"url":"/devices/1809e880-aeae-4cfd-b589-20204ad38740?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8655ec90-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66? 200 22ms","method":"GET","requestID":"8655ec90-6a0a-11ef-9b41-2363e6623fc8","responseTime":22,"status":200,"url":"/devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aff23c9d-4a13-467b-9749-9296976e3663"},"level":"info","message":"Setting up experiment","requestID":"f1645a3dcfde99f4a8c3a637cf6c03eb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aff23c9d-4a13-467b-9749-9296976e3663"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"f1645a3dcfde99f4a8c3a637cf6c03eb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aff23c9d-4a13-467b-9749-9296976e3663"},"level":"info","message":"Successfully locked booking for experiment","requestID":"f1645a3dcfde99f4a8c3a637cf6c03eb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aff23c9d-4a13-467b-9749-9296976e3663"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"f1645a3dcfde99f4a8c3a637cf6c03eb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aff23c9d-4a13-467b-9749-9296976e3663"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"f1645a3dcfde99f4a8c3a637cf6c03eb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aff23c9d-4a13-467b-9749-9296976e3663"},"level":"info","message":"Attempting to update booking for experiment","requestID":"f1645a3dcfde99f4a8c3a637cf6c03eb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aff23c9d-4a13-467b-9749-9296976e3663"},"level":"info","message":"Successfully updated booking for experiment","requestID":"f1645a3dcfde99f4a8c3a637cf6c03eb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aff23c9d-4a13-467b-9749-9296976e3663"},"level":"info","message":"Successfully set up experiment","requestID":"f1645a3dcfde99f4a8c3a637cf6c03eb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"86646b80-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8664b9a0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":363,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:10Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"866555e0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":363,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.391953,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:10Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":364,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1809e880-aeae-4cfd-b589-20204ad38740","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"86646b80-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/1809e880-aeae-4cfd-b589-20204ad38740","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377890,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5MH0.IY-vjU_MyGZuiZ3abyfH8g0S1L68ikJUWQ29EIu8mB4"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"86646b80-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":364,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.448811,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:10Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aff23c9d-4a13-467b-9749-9296976e3663"},"level":"info","message":"Successfully running experiment","requestID":"f1645a3dcfde99f4a8c3a637cf6c03eb"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8664b9a0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377890,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5MH0.IY-vjU_MyGZuiZ3abyfH8g0S1L68ikJUWQ29EIu8mB4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8664b9a0-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":365,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:10Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1809e880-aeae-4cfd-b589-20204ad38740","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"01d56526-954f-4a16-ad37-e56892681676","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377890.888337} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1809e880-aeae-4cfd-b589-20204ad38740","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1809e880-aeae-4cfd-b589-20204ad38740","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:08.532626251Z"}]},"request_id":"81bc95c9-ca07-4842-8a4e-1ed0d0c87cfd","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377890.889358} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":365,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.306357,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:10Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1adb9e61-e007-4cc5-97a9-01f31d00ce66","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1adb9e61-e007-4cc5-97a9-01f31d00ce66","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:08.570648619Z"}]},"request_id":"18baa4f6-8fd5-4bf2-84f1-a0870e88554e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377890.8914344} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1809e880-aeae-4cfd-b589-20204ad38740","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"866555e0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1809e880-aeae-4cfd-b589-20204ad38740","object_type":"device","rebac_allow":false,"scope_allow":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":"866555e0-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"86646b80-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"8664b9a0-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"866555e0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/1809e880-aeae-4cfd-b589-20204ad38740/signaling 200 25ms","method":"POST","requestID":"866555e0-6a0a-11ef-9b41-2363e6623fc8","responseTime":25,"status":200,"url":"/devices/1809e880-aeae-4cfd-b589-20204ad38740/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"86646b80-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/1809e880-aeae-4cfd-b589-20204ad38740? 200 33ms","method":"GET","requestID":"86646b80-6a0a-11ef-9b41-2363e6623fc8","responseTime":33,"status":200,"url":"/devices/1809e880-aeae-4cfd-b589-20204ad38740?"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Faff23c9d-4a13-467b-9749-9296976e3663#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Faff23c9d-4a13-467b-9749-9296976e3663","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"9b0d0c5e-3341-419d-b491-4be2603b2d49","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377890.904413} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8664b9a0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"08a63313-1aef-4514-be75-492b2c17d8ba","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377890.905385} device-1 | {"level":"info","message":"GET /devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66? 200 33ms","method":"GET","requestID":"8664b9a0-6a0a-11ef-9b41-2363e6623fc8","responseTime":33,"status":200,"url":"/devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"f1645a3dcfde99f4a8c3a637cf6c03eb","responseTime":24,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"866a10d0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":366,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:10Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"866afb30-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1adb9e61-e007-4cc5-97a9-01f31d00ce66","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f9d96952-893e-4351-871f-a800c6c71428","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377890.917857} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":366,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.748304,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:10Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":367,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"866a10d0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66","object_type":"device","rebac_allow":false,"scope_allow":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":"866a10d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1809e880-aeae-4cfd-b589-20204ad38740","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"09322827-8eb2-4fbb-8ba9-8b02a775ee4e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377890.9234653} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":367,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.096237,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1809e880-aeae-4cfd-b589-20204ad38740","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"866afb30-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1809e880-aeae-4cfd-b589-20204ad38740","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/aff23c9d-4a13-467b-9749-9296976e3663","user":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"f1645a3dcfde99f4a8c3a637cf6c03eb"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"866afb30-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"03/Sep/2024:15:38:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1287","request_time":"0.207","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f1645a3dcfde99f4a8c3a637cf6c03eb"} experiment-1 | {"level":"info","message":"POST /experiments? 201 199ms","method":"POST","requestID":"f1645a3dcfde99f4a8c3a637cf6c03eb","responseTime":199,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"866a10d0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66/signaling 200 20ms","method":"POST","requestID":"866a10d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":20,"status":200,"url":"/devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"866afb30-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/1809e880-aeae-4cfd-b589-20204ad38740/signaling 200 19ms","method":"POST","requestID":"866afb30-6a0a-11ef-9b41-2363e6623fc8","responseTime":19,"status":200,"url":"/devices/1809e880-aeae-4cfd-b589-20204ad38740/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5MH0.IY-vjU_MyGZuiZ3abyfH8g0S1L68ikJUWQ29EIu8mB4","level":"info","message":"auth send jwt","requestID":"a185919bdd5ad60b4260edba82d63f5d"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"a185919bdd5ad60b4260edba82d63f5d","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a185919bdd5ad60b4260edba82d63f5d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"866ea4b0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":368,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:10Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":368,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.003243,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:10Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":369,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1809e880-aeae-4cfd-b589-20204ad38740","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a185919bdd5ad60b4260edba82d63f5d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/1809e880-aeae-4cfd-b589-20204ad38740","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377890,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5MH0.IY-vjU_MyGZuiZ3abyfH8g0S1L68ikJUWQ29EIu8mB4"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"a185919bdd5ad60b4260edba82d63f5d","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1adb9e61-e007-4cc5-97a9-01f31d00ce66","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4e474fd3-0620-4da0-989d-490db1e459d0","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377890.947091} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":369,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.778647,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"866ea4b0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66","object_type":"device","rebac_allow":false,"scope_allow":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":"866ea4b0-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1809e880-aeae-4cfd-b589-20204ad38740","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1809e880-aeae-4cfd-b589-20204ad38740","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:08.532626251Z"}]},"request_id":"d474d08f-ec34-41ff-9616-b2610f04eac9","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377890.9527564} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"866ea4b0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a185919bdd5ad60b4260edba82d63f5d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66/signaling 200 15ms","method":"POST","requestID":"866ea4b0-6a0a-11ef-9b41-2363e6623fc8","responseTime":15,"status":200,"url":"/devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aff23c9d-4a13-467b-9749-9296976e3663"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"f1645a3dcfde99f4a8c3a637cf6c03eb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aff23c9d-4a13-467b-9749-9296976e3663"},"level":"info","message":"Building connection plan","requestID":"f1645a3dcfde99f4a8c3a637cf6c03eb"} 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":"e2fb757d-4552-4b13-86fa-12bae08be0fc"},{"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":"fa13ea5f-5975-4314-ab04-5e804f10db7f"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"5fc6de30-5bf4-421c-8f25-783ae5d1c82b"}]},"level":"info","message":"Built pairwise service configurations","requestID":"f1645a3dcfde99f4a8c3a637cf6c03eb"} 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/1adb9e61-e007-4cc5-97a9-01f31d00ce66"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/1809e880-aeae-4cfd-b589-20204ad38740"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"f1645a3dcfde99f4a8c3a637cf6c03eb"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a185919bdd5ad60b4260edba82d63f5d"} device-1 | {"level":"info","message":"GET /devices/1809e880-aeae-4cfd-b589-20204ad38740? 200 23ms","method":"GET","requestID":"a185919bdd5ad60b4260edba82d63f5d","responseTime":23,"status":200,"url":"/devices/1809e880-aeae-4cfd-b589-20204ad38740?"} gateway-1 | {"time_local":"03/Sep/2024:15:38:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1809e880-aeae-4cfd-b589-20204ad38740? 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":"a185919bdd5ad60b4260edba82d63f5d"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"86720010-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":370,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:10Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":370,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.118808,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:10Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"86720010-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377890,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5MH0.IY-vjU_MyGZuiZ3abyfH8g0S1L68ikJUWQ29EIu8mB4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5MH0.IY-vjU_MyGZuiZ3abyfH8g0S1L68ikJUWQ29EIu8mB4","level":"info","message":"auth send jwt","requestID":"c22cf81f308a63357a53b238e5a7f163"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"86720010-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c22cf81f308a63357a53b238e5a7f163","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c22cf81f308a63357a53b238e5a7f163"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":371,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:10Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":371,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.970947,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"c22cf81f308a63357a53b238e5a7f163","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377890,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5MH0.IY-vjU_MyGZuiZ3abyfH8g0S1L68ikJUWQ29EIu8mB4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c22cf81f308a63357a53b238e5a7f163","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1adb9e61-e007-4cc5-97a9-01f31d00ce66","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1adb9e61-e007-4cc5-97a9-01f31d00ce66","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:08.570648619Z"}]},"request_id":"cdb7d581-241b-4fee-b3d4-9e4c1b05ca7d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377890.977214} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c22cf81f308a63357a53b238e5a7f163","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","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%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"1f2047f6-96c2-4904-871d-c3a8ab3476c7","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377890.9789152} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c4f6c87d-6c5a-44c7-99a2-fe6dcf74accc","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377890.9793446} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"86720010-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c22cf81f308a63357a53b238e5a7f163"} gateway-1 | {"time_local":"03/Sep/2024:15:38:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66? 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":"c22cf81f308a63357a53b238e5a7f163"} device-1 | {"level":"info","message":"GET /devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66? 200 15ms","method":"GET","requestID":"c22cf81f308a63357a53b238e5a7f163","responseTime":15,"status":200,"url":"/devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"86720010-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"86720010-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/afdbf62d-600b-4680-8694-4d1b7d719495'","requestID":"86720010-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/afdbf62d-600b-4680-8694-4d1b7d719495'","requestID":"86720010-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"86720010-6a0a-11ef-9b41-2363e6623fc8"} 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":"86720010-6a0a-11ef-9b41-2363e6623fc8","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":"86720010-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/afdbf62d-600b-4680-8694-4d1b7d719495","device":"1adb9e61-e007-4cc5-97a9-01f31d00ce66","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} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/afdbf62d-600b-4680-8694-4d1b7d719495","device":"1809e880-aeae-4cfd-b589-20204ad38740","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":true} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aff23c9d-4a13-467b-9749-9296976e3663"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"f1645a3dcfde99f4a8c3a637cf6c03eb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"867c8760-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":372,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:11Z"} device-1 | {"device":"1adb9e61-e007-4cc5-97a9-01f31d00ce66","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"1adb9e61-e007-4cc5-97a9-01f31d00ce66","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"1809e880-aeae-4cfd-b589-20204ad38740","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1809e880-aeae-4cfd-b589-20204ad38740","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"49ef39dd-1ea3-46d5-af39-d2ca7aceedfe","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377891.0351486} device-1 | {"content":{"canTrickle":true},"device":"1809e880-aeae-4cfd-b589-20204ad38740","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":372,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.674508,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1809e880-aeae-4cfd-b589-20204ad38740","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"867c8760-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1809e880-aeae-4cfd-b589-20204ad38740","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"867c8760-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"867c8760-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/1809e880-aeae-4cfd-b589-20204ad38740/signaling 200 11ms","method":"POST","requestID":"867c8760-6a0a-11ef-9b41-2363e6623fc8","responseTime":11,"status":200,"url":"/devices/1809e880-aeae-4cfd-b589-20204ad38740/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"867e8330-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"content":{"sdp":"v=0\r\no=- 8269785454140501957 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:KAOd\r\na=ice-pwd:bYVcu67PICjuMBsP74T4H6GQ\r\na=ice-options:trickle\r\na=fingerprint:sha-256 6C:48:43:BF:55:46:A5:1A:71:41:DB:B8:B8:50:50:A1:B9:5F:7C:98:11:20:09:E9:71:0D:1D:0C:AF:2C:20:8F\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"1809e880-aeae-4cfd-b589-20204ad38740","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":373,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:11Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1adb9e61-e007-4cc5-97a9-01f31d00ce66","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cce73fb6-083d-4aa1-910f-59648bf220e8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377891.0484664} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":373,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.577343,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"867e8330-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"867e8330-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"content":{"sdp":"v=0\r\no=- 6885393596603991462 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:+PgH\r\na=ice-pwd:ewXHwz2WmL8KNSb5ge7qq5y3\r\na=ice-options:trickle\r\na=fingerprint:sha-256 46:23:9B:02:25:FB:B5:78:4E:49:DF:01:81:5B:AA:15:2C:EA:A4:D5:E4:82:5C:04:0D:9E:02:BE:05:FF:06:BA\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"1adb9e61-e007-4cc5-97a9-01f31d00ce66","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"867e8330-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66/signaling 200 12ms","method":"POST","requestID":"867e8330-6a0a-11ef-9b41-2363e6623fc8","responseTime":12,"status":200,"url":"/devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66/signaling"} device-1 | {"content":{"candidate":"candidate:2549446371 1 udp 2113937151 5c78314c-6bff-4678-851d-8e36b92368a4.local 40421 typ host generation 0 ufrag +PgH network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"1adb9e61-e007-4cc5-97a9-01f31d00ce66","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:332930204 1 udp 1677729535 141.24.211.56 40421 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag +PgH network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"1adb9e61-e007-4cc5-97a9-01f31d00ce66","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/1adb9e61-e007-4cc5-97a9-01f31d00ce66'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66'"} device-1 | {"content":{"candidate":"candidate:3754925129 1 udp 2113937151 a4a35f8a-4d53-4c6a-aac4-4b253e862028.local 56740 typ host generation 0 ufrag KAOd network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"1809e880-aeae-4cfd-b589-20204ad38740","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1290026330 1 udp 1677729535 141.24.211.56 56740 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag KAOd network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"1809e880-aeae-4cfd-b589-20204ad38740","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/1809e880-aeae-4cfd-b589-20204ad38740'"} device-1 | {"device":"1809e880-aeae-4cfd-b589-20204ad38740","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"1adb9e61-e007-4cc5-97a9-01f31d00ce66","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/afdbf62d-600b-4680-8694-4d1b7d719495' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"afdbf62d-600b-4680-8694-4d1b7d719495","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"59dcae39b493d4e6e37fd69095d8f156","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"1809e880-aeae-4cfd-b589-20204ad38740","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"1adb9e61-e007-4cc5-97a9-01f31d00ce66","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"59dcae39b493d4e6e37fd69095d8f156","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"1809e880-aeae-4cfd-b589-20204ad38740","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"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/1adb9e61-e007-4cc5-97a9-01f31d00ce66"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/1809e880-aeae-4cfd-b589-20204ad38740"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/afdbf62d-600b-4680-8694-4d1b7d719495"}}},"level":"info","message":"received a callback","requestID":"59dcae39b493d4e6e37fd69095d8f156"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"59dcae39b493d4e6e37fd69095d8f156","responseTime":6,"status":200,"url":"/callbacks/experiment"} device-1 | {"device":"1adb9e61-e007-4cc5-97a9-01f31d00ce66","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} gateway-1 | {"time_local":"03/Sep/2024:15:38:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"59dcae39b493d4e6e37fd69095d8f156"} device-1 | {"data":{"peerconnection":"afdbf62d-600b-4680-8694-4d1b7d719495","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"1adb9e61-e007-4cc5-97a9-01f31d00ce66","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"afdbf62d-600b-4680-8694-4d1b7d719495","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/afdbf62d-600b-4680-8694-4d1b7d719495' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"afdbf62d-600b-4680-8694-4d1b7d719495","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6abdbf640cd6f0448d6ed7a203f81726","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6abdbf640cd6f0448d6ed7a203f81726","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":"connected","url":"http://localhost/devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/1809e880-aeae-4cfd-b589-20204ad38740"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/afdbf62d-600b-4680-8694-4d1b7d719495"}}},"level":"info","message":"received a callback","requestID":"6abdbf640cd6f0448d6ed7a203f81726"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"8689cdd0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":374,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:11Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fafdbf62d-600b-4680-8694-4d1b7d719495","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8b6ca459-5019-4e4c-81ed-9f7906c23b40","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377891.1222208} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":374,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":1.970761,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/afdbf62d-600b-4680-8694-4d1b7d719495","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8689cdd0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/afdbf62d-600b-4680-8694-4d1b7d719495","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":"8689cdd0-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"8689cdd0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /peerconnections/afdbf62d-600b-4680-8694-4d1b7d719495 200 8ms","method":"GET","requestID":"8689cdd0-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/peerconnections/afdbf62d-600b-4680-8694-4d1b7d719495"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 27ms","method":"POST","requestID":"6abdbf640cd6f0448d6ed7a203f81726","responseTime":27,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.031","http_referrer":"","http_user_agent":"node-fetch","requestID":"6abdbf640cd6f0448d6ed7a203f81726"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"868d7750-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":375,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:11Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1adb9e61-e007-4cc5-97a9-01f31d00ce66","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c4660f2b-9a57-41fb-94b7-01c9449399b2","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377891.1463966} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":375,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.864293,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"868d7750-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"868d7750-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"868d7750-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66/signaling 200 9ms","method":"POST","requestID":"868d7750-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"868f2500-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":376,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:11Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1809e880-aeae-4cfd-b589-20204ad38740","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"de1592b5-04d2-41e1-b10a-8a2c48cacbef","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377891.1571243} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":376,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.751051,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1809e880-aeae-4cfd-b589-20204ad38740","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"868f2500-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1809e880-aeae-4cfd-b589-20204ad38740","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"868f2500-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"868f2500-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/1809e880-aeae-4cfd-b589-20204ad38740/signaling 200 9ms","method":"POST","requestID":"868f2500-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/devices/1809e880-aeae-4cfd-b589-20204ad38740/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5MX0.Z8m1QcEYekJyThg3wPUG338ICbls3VmDtmd3MEYkah0","level":"info","message":"auth send jwt","requestID":"5aca0ef6f97ba8416e026c2c742c10f4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5aca0ef6f97ba8416e026c2c742c10f4","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/aff23c9d-4a13-467b-9749-9296976e3663","requestID":"5aca0ef6f97ba8416e026c2c742c10f4"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":377,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:11Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":377,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.664283,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/aff23c9d-4a13-467b-9749-9296976e3663","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"5aca0ef6f97ba8416e026c2c742c10f4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/aff23c9d-4a13-467b-9749-9296976e3663","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377891,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5MX0.Z8m1QcEYekJyThg3wPUG338ICbls3VmDtmd3MEYkah0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5aca0ef6f97ba8416e026c2c742c10f4","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/aff23c9d-4a13-467b-9749-9296976e3663","requestID":"5aca0ef6f97ba8416e026c2c742c10f4"} gateway-1 | {"time_local":"03/Sep/2024:15:38:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/aff23c9d-4a13-467b-9749-9296976e3663 HTTP/1.1","status": "200","body_bytes_sent":"1360","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5aca0ef6f97ba8416e026c2c742c10f4"} experiment-1 | {"level":"info","message":"GET /experiments/aff23c9d-4a13-467b-9749-9296976e3663 200 10ms","method":"GET","requestID":"5aca0ef6f97ba8416e026c2c742c10f4","responseTime":10,"status":200,"url":"/experiments/aff23c9d-4a13-467b-9749-9296976e3663"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5MX0.Z8m1QcEYekJyThg3wPUG338ICbls3VmDtmd3MEYkah0","level":"info","message":"auth send jwt","requestID":"654720423f1f5364546089d74bde800c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"654720423f1f5364546089d74bde800c","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/aff23c9d-4a13-467b-9749-9296976e3663","requestID":"654720423f1f5364546089d74bde800c"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":378,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:11Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":378,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.70774,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:11Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/aff23c9d-4a13-467b-9749-9296976e3663","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"654720423f1f5364546089d74bde800c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/aff23c9d-4a13-467b-9749-9296976e3663","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377891,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5MX0.Z8m1QcEYekJyThg3wPUG338ICbls3VmDtmd3MEYkah0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"654720423f1f5364546089d74bde800c","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aff23c9d-4a13-467b-9749-9296976e3663"},"level":"info","message":"Attempting to finish experiment","requestID":"654720423f1f5364546089d74bde800c"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"86991010-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":379,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:11Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":379,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.642982,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:11Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/afdbf62d-600b-4680-8694-4d1b7d719495","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"86991010-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:http://localhost/peerconnections/afdbf62d-600b-4680-8694-4d1b7d719495","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377891,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5MX0.Z8m1QcEYekJyThg3wPUG338ICbls3VmDtmd3MEYkah0"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"86991010-6a0a-11ef-9b41-2363e6623fc8","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/afdbf62d-600b-4680-8694-4d1b7d719495","device":"1809e880-aeae-4cfd-b589-20204ad38740","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/afdbf62d-600b-4680-8694-4d1b7d719495","device":"1adb9e61-e007-4cc5-97a9-01f31d00ce66","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/afdbf62d-600b-4680-8694-4d1b7d719495' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/afdbf62d-600b-4680-8694-4d1b7d719495' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"afdbf62d-600b-4680-8694-4d1b7d719495","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fafdbf62d-600b-4680-8694-4d1b7d719495': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fafdbf62d-600b-4680-8694-4d1b7d719495","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"2699e984-7ee7-44d5-966d-dfdf3204e206","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377891.2311156} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f17b97e1-f243-4c7d-a044-ff50ac371b8d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377891.2313373} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bb464e19c11ec35856db82df4dd1df8a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"bb464e19c11ec35856db82df4dd1df8a","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"86991010-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"858a7edb472692b2684cc6e1debcdc48","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/1adb9e61-e007-4cc5-97a9-01f31d00ce66"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/1809e880-aeae-4cfd-b589-20204ad38740"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/afdbf62d-600b-4680-8694-4d1b7d719495"}}},"level":"info","message":"received a callback","requestID":"bb464e19c11ec35856db82df4dd1df8a"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"858a7edb472692b2684cc6e1debcdc48","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/1adb9e61-e007-4cc5-97a9-01f31d00ce66"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/1809e880-aeae-4cfd-b589-20204ad38740"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/afdbf62d-600b-4680-8694-4d1b7d719495"}}},"level":"info","message":"received a callback","requestID":"858a7edb472692b2684cc6e1debcdc48"} device-1 | {"data":{"peerconnection":"afdbf62d-600b-4680-8694-4d1b7d719495","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"86991010-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"DELETE /peerconnections/afdbf62d-600b-4680-8694-4d1b7d719495 204 36ms","method":"DELETE","requestID":"86991010-6a0a-11ef-9b41-2363e6623fc8","responseTime":36,"status":204,"url":"/peerconnections/afdbf62d-600b-4680-8694-4d1b7d719495"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aff23c9d-4a13-467b-9749-9296976e3663"},"level":"info","message":"Successfully finished experiment","requestID":"654720423f1f5364546089d74bde800c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"86a0d840-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":380,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:11Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1adb9e61-e007-4cc5-97a9-01f31d00ce66","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d7680762-9306-4214-8c69-7b9f21ab1861","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377891.2725987} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":380,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.717877,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"86a0d840-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"86a0d840-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"86a0d840-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66/signaling 200 9ms","method":"POST","requestID":"86a0d840-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/devices/1adb9e61-e007-4cc5-97a9-01f31d00ce66/signaling"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Faff23c9d-4a13-467b-9749-9296976e3663': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Faff23c9d-4a13-467b-9749-9296976e3663","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"251a3e15-b88e-4f01-9246-48f7c74fb86d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377891.279148} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8dd04ba1-7c7d-4ae0-96f5-48249f3d013c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377891.2793887} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"86a285f0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"654720423f1f5364546089d74bde800c","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":381,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:11Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1809e880-aeae-4cfd-b589-20204ad38740","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aa83a325-270b-4640-af08-d0f8a37864ce","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377891.2836952} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":381,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.241125,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1809e880-aeae-4cfd-b589-20204ad38740","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"86a285f0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1809e880-aeae-4cfd-b589-20204ad38740","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"86a285f0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"86a285f0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/1809e880-aeae-4cfd-b589-20204ad38740/signaling 200 10ms","method":"POST","requestID":"86a285f0-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/devices/1809e880-aeae-4cfd-b589-20204ad38740/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/aff23c9d-4a13-467b-9749-9296976e3663","requestID":"654720423f1f5364546089d74bde800c"} gateway-1 | {"time_local":"03/Sep/2024:15:38:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/aff23c9d-4a13-467b-9749-9296976e3663 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.139","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"654720423f1f5364546089d74bde800c"} experiment-1 | {"level":"info","message":"DELETE /experiments/aff23c9d-4a13-467b-9749-9296976e3663 204 137ms","method":"DELETE","requestID":"654720423f1f5364546089d74bde800c","responseTime":137,"status":204,"url":"/experiments/aff23c9d-4a13-467b-9749-9296976e3663"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 114ms","method":"POST","requestID":"bb464e19c11ec35856db82df4dd1df8a","responseTime":114,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.117","http_referrer":"","http_user_agent":"node-fetch","requestID":"bb464e19c11ec35856db82df4dd1df8a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 114ms","method":"POST","requestID":"858a7edb472692b2684cc6e1debcdc48","responseTime":114,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.118","http_referrer":"","http_user_agent":"node-fetch","requestID":"858a7edb472692b2684cc6e1debcdc48"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5MX0.Z8m1QcEYekJyThg3wPUG338ICbls3VmDtmd3MEYkah0","level":"info","message":"auth send jwt","requestID":"9b4d463c6fe94bcb2bee743be27b3d8b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9b4d463c6fe94bcb2bee743be27b3d8b","responseTime":4,"status":200,"url":"/auth"} gateway-1 | {"time_local":"03/Sep/2024:15:38:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2886","request_time":"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":"7c6d41abd7ad316859850af01cb92f09"} device-1 | {"level":"info","message":"postDevices called","requestID":"9b4d463c6fe94bcb2bee743be27b3d8b"} gateway-1 | {"time_local":"03/Sep/2024:15:38:11 +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.739","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"836248862571669acf60b8cc529e3336"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":382,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:11Z"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/1809e880-aeae-4cfd-b589-20204ad38740' closed"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":382,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.949413,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9b4d463c6fe94bcb2bee743be27b3d8b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377891,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5MX0.Z8m1QcEYekJyThg3wPUG338ICbls3VmDtmd3MEYkah0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9b4d463c6fe94bcb2bee743be27b3d8b","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/1adb9e61-e007-4cc5-97a9-01f31d00ce66' 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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2a8b8f39-a163-45e8-b670-aeccd58ed747","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377891.3792017} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9b4d463c6fe94bcb2bee743be27b3d8b","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a1fbee7d-3431-4dda-b37b-353fb219c52d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377891.3837473} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"9b4d463c6fe94bcb2bee743be27b3d8b","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"85c3085c-73ae-4da2-ac63-b7c0d53a315e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377891.3926325} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4fc9c193-21e0-41d5-93e8-bcfcaec154a1","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377891.3927946} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"9b4d463c6fe94bcb2bee743be27b3d8b","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:11.392607040Z"}]},"request_id":"16b4d879-81ff-4263-9f0e-5b5cd503bf55","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377891.3960512} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9b4d463c6fe94bcb2bee743be27b3d8b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"9b4d463c6fe94bcb2bee743be27b3d8b"} gateway-1 | {"time_local":"03/Sep/2024:15:38:11 +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":"9b4d463c6fe94bcb2bee743be27b3d8b"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"9b4d463c6fe94bcb2bee743be27b3d8b","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5MX0.Z8m1QcEYekJyThg3wPUG338ICbls3VmDtmd3MEYkah0","level":"info","message":"auth send jwt","requestID":"428e3dae31a77610460bb290600d9a3b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"428e3dae31a77610460bb290600d9a3b","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"428e3dae31a77610460bb290600d9a3b"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":383,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:11Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":383,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.951263,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"428e3dae31a77610460bb290600d9a3b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377891,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5MX0.Z8m1QcEYekJyThg3wPUG338ICbls3VmDtmd3MEYkah0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"428e3dae31a77610460bb290600d9a3b","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7abea390-0361-42f3-b16f-a062b1f1e23e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7a5fb7ef-4389-4151-bb06-f9731e28acb4","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377891.4260511} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"428e3dae31a77610460bb290600d9a3b","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4909450d-eadf-402c-8df2-35e2b387b2d2","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377891.430419} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"428e3dae31a77610460bb290600d9a3b","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7abea390-0361-42f3-b16f-a062b1f1e23e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"cbec2b43-ad4e-4fa8-8c6d-8078e4102936","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377891.4419703} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d812547d-20b5-424d-b4a2-7ac7ca12ea88","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377891.4422615} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"428e3dae31a77610460bb290600d9a3b","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7abea390-0361-42f3-b16f-a062b1f1e23e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7abea390-0361-42f3-b16f-a062b1f1e23e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:11.441948447Z"}]},"request_id":"b005cf70-0df9-4c17-9e5f-060dcbfb52bf","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377891.445887} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"428e3dae31a77610460bb290600d9a3b","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"428e3dae31a77610460bb290600d9a3b"} gateway-1 | {"time_local":"03/Sep/2024:15:38:11 +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":"428e3dae31a77610460bb290600d9a3b"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"428e3dae31a77610460bb290600d9a3b","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5MX0.Z8m1QcEYekJyThg3wPUG338ICbls3VmDtmd3MEYkah0","level":"info","message":"auth send jwt","requestID":"b98c29d7d7662d9bb741278363459afc"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b98c29d7d7662d9bb741278363459afc","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b98c29d7d7662d9bb741278363459afc"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":384,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:11Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":384,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.860389,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:11Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7abea390-0361-42f3-b16f-a062b1f1e23e","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"b98c29d7d7662d9bb741278363459afc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/7abea390-0361-42f3-b16f-a062b1f1e23e","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377891,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5MX0.Z8m1QcEYekJyThg3wPUG338ICbls3VmDtmd3MEYkah0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b98c29d7d7662d9bb741278363459afc","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7abea390-0361-42f3-b16f-a062b1f1e23e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7abea390-0361-42f3-b16f-a062b1f1e23e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:11.441948447Z"}]},"request_id":"b86f9831-6ca5-4d7e-ae06-87bcfe35d0ff","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377891.9244297} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b98c29d7d7662d9bb741278363459afc","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"62543732-0955-4c99-ba3f-2e637844de02","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377891.9324722} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"b98c29d7d7662d9bb741278363459afc","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7abea390-0361-42f3-b16f-a062b1f1e23e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7abea390-0361-42f3-b16f-a062b1f1e23e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:11.441948447Z"}]},"request_id":"7d87e27f-5bde-4b50-85f0-175e8183a873","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377891.9453387} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"b98c29d7d7662d9bb741278363459afc","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b98c29d7d7662d9bb741278363459afc"} device-1 | {"level":"info","message":"PATCH /devices/7abea390-0361-42f3-b16f-a062b1f1e23e 200 41ms","method":"PATCH","requestID":"b98c29d7d7662d9bb741278363459afc","responseTime":41,"status":200,"url":"/devices/7abea390-0361-42f3-b16f-a062b1f1e23e"} gateway-1 | {"time_local":"03/Sep/2024:15:38:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/7abea390-0361-42f3-b16f-a062b1f1e23e HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.045","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"b98c29d7d7662d9bb741278363459afc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5MX0.Z8m1QcEYekJyThg3wPUG338ICbls3VmDtmd3MEYkah0","level":"info","message":"auth send jwt","requestID":"823b623b27b87d37b03e7039c24258bc"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"823b623b27b87d37b03e7039c24258bc","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"823b623b27b87d37b03e7039c24258bc"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":385,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:11Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":385,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.292766,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:11Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7abea390-0361-42f3-b16f-a062b1f1e23e","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"823b623b27b87d37b03e7039c24258bc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/7abea390-0361-42f3-b16f-a062b1f1e23e","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377891,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5MX0.Z8m1QcEYekJyThg3wPUG338ICbls3VmDtmd3MEYkah0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"823b623b27b87d37b03e7039c24258bc","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"823b623b27b87d37b03e7039c24258bc"} gateway-1 | {"time_local":"03/Sep/2024:15:38:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/7abea390-0361-42f3-b16f-a062b1f1e23e/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"823b623b27b87d37b03e7039c24258bc"} device-1 | {"level":"info","message":"POST /devices/7abea390-0361-42f3-b16f-a062b1f1e23e/websocket 200 22ms","method":"POST","requestID":"823b623b27b87d37b03e7039c24258bc","responseTime":22,"status":200,"url":"/devices/7abea390-0361-42f3-b16f-a062b1f1e23e/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/7abea390-0361-42f3-b16f-a062b1f1e23e' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"dabb40e7f1e8e1d30f7a732252b7e34f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"dabb40e7f1e8e1d30f7a732252b7e34f","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"03/Sep/2024:15:38:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82/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":"dabb40e7f1e8e1d30f7a732252b7e34f"} device-1 | {"level":"info","message":"OPTIONS /devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82/websocket 200 1ms","method":"OPTIONS","requestID":"dabb40e7f1e8e1d30f7a732252b7e34f","responseTime":1,"status":200,"url":"/devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5M30.gDI2wFFFB6GohzIjhgBOBhJNRlXjNk9jsKQVM9tgdTY","level":"info","message":"auth send jwt","requestID":"f855ab75cb96c720dd49b98546337de0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f855ab75cb96c720dd49b98546337de0","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f855ab75cb96c720dd49b98546337de0"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":386,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:13Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":386,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.195938,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:13Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"f855ab75cb96c720dd49b98546337de0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377893,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5M30.gDI2wFFFB6GohzIjhgBOBhJNRlXjNk9jsKQVM9tgdTY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f855ab75cb96c720dd49b98546337de0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f855ab75cb96c720dd49b98546337de0"} device-1 | {"level":"info","message":"POST /devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82/websocket 200 27ms","method":"POST","requestID":"f855ab75cb96c720dd49b98546337de0","responseTime":27,"status":200,"url":"/devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82/websocket"} gateway-1 | {"time_local":"03/Sep/2024:15:38:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.033","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"f855ab75cb96c720dd49b98546337de0"} device-1 | {"level":"info","message":"device 'http://localhost/devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5M30.gDI2wFFFB6GohzIjhgBOBhJNRlXjNk9jsKQVM9tgdTY","level":"info","message":"auth send jwt","requestID":"8c9e0bd67d1028720b99351c62cacc63"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8c9e0bd67d1028720b99351c62cacc63","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8c9e0bd67d1028720b99351c62cacc63"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":387,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:13Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":387,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.360636,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8c9e0bd67d1028720b99351c62cacc63","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377893,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5M30.gDI2wFFFB6GohzIjhgBOBhJNRlXjNk9jsKQVM9tgdTY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8c9e0bd67d1028720b99351c62cacc63","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:11.392607040Z"}]},"request_id":"fed796c6-a6e0-4082-b48a-23ff5993d3a6","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377893.538376} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8c9e0bd67d1028720b99351c62cacc63","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8c9e0bd67d1028720b99351c62cacc63"} device-1 | {"level":"info","message":"GET /devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82? 200 19ms","method":"GET","requestID":"8c9e0bd67d1028720b99351c62cacc63","responseTime":19,"status":200,"url":"/devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82?"} gateway-1 | {"time_local":"03/Sep/2024:15:38:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82? 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":"8c9e0bd67d1028720b99351c62cacc63"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5M30.gDI2wFFFB6GohzIjhgBOBhJNRlXjNk9jsKQVM9tgdTY","level":"info","message":"auth send jwt","requestID":"2a48294abb5339725c9e35ab75a86893"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2a48294abb5339725c9e35ab75a86893","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2a48294abb5339725c9e35ab75a86893"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":388,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:13Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":388,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.105454,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7abea390-0361-42f3-b16f-a062b1f1e23e","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"2a48294abb5339725c9e35ab75a86893","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/7abea390-0361-42f3-b16f-a062b1f1e23e","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377893,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5M30.gDI2wFFFB6GohzIjhgBOBhJNRlXjNk9jsKQVM9tgdTY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2a48294abb5339725c9e35ab75a86893","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7abea390-0361-42f3-b16f-a062b1f1e23e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7abea390-0361-42f3-b16f-a062b1f1e23e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:11.441948447Z"}]},"request_id":"ac3e11d5-d27e-498d-a3fe-4d511f109a7c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377893.5618653} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2a48294abb5339725c9e35ab75a86893","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2a48294abb5339725c9e35ab75a86893"} gateway-1 | {"time_local":"03/Sep/2024:15:38:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7abea390-0361-42f3-b16f-a062b1f1e23e? 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":"2a48294abb5339725c9e35ab75a86893"} device-1 | {"level":"info","message":"GET /devices/7abea390-0361-42f3-b16f-a062b1f1e23e? 200 17ms","method":"GET","requestID":"2a48294abb5339725c9e35ab75a86893","responseTime":17,"status":200,"url":"/devices/7abea390-0361-42f3-b16f-a062b1f1e23e?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5M30.gDI2wFFFB6GohzIjhgBOBhJNRlXjNk9jsKQVM9tgdTY","level":"info","message":"auth send jwt","requestID":"f1cbaf61c73aeadcee9169818e6e9914"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f1cbaf61c73aeadcee9169818e6e9914","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"f1cbaf61c73aeadcee9169818e6e9914"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":389,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:13Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":389,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.210447,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:13Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"f1cbaf61c73aeadcee9169818e6e9914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377893,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5M30.gDI2wFFFB6GohzIjhgBOBhJNRlXjNk9jsKQVM9tgdTY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f1cbaf61c73aeadcee9169818e6e9914","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/be744af9-701b-40ef-bb51-006f221e1000"},"level":"info","message":"Attempting to run experiment","requestID":"f1cbaf61c73aeadcee9169818e6e9914"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/be744af9-701b-40ef-bb51-006f221e1000"},"level":"info","message":"Attempting to book experiment","requestID":"f1cbaf61c73aeadcee9169818e6e9914"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/be744af9-701b-40ef-bb51-006f221e1000"},"level":"info","message":"Successfully booked experiment","requestID":"f1cbaf61c73aeadcee9169818e6e9914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"88080960-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"88085780-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":390,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:13Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":390,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.85871,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:13Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":391,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"88080960-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377893,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5M30.gDI2wFFFB6GohzIjhgBOBhJNRlXjNk9jsKQVM9tgdTY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"88080960-6a0a-11ef-9b41-2363e6623fc8","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":391,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.911071,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7abea390-0361-42f3-b16f-a062b1f1e23e","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"88085780-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/7abea390-0361-42f3-b16f-a062b1f1e23e","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377893,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5M30.gDI2wFFFB6GohzIjhgBOBhJNRlXjNk9jsKQVM9tgdTY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"88085780-6a0a-11ef-9b41-2363e6623fc8","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:11.392607040Z"}]},"request_id":"5e74a20f-9549-4bca-8974-4ea8a59575a0","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377893.6311777} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"88080960-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7abea390-0361-42f3-b16f-a062b1f1e23e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7abea390-0361-42f3-b16f-a062b1f1e23e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:11.441948447Z"}]},"request_id":"e9f2dc55-5323-4ea0-a1c8-a60b9d30431b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377893.6330953} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"88085780-6a0a-11ef-9b41-2363e6623fc8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"88080960-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82? 200 15ms","method":"GET","requestID":"88080960-6a0a-11ef-9b41-2363e6623fc8","responseTime":15,"status":200,"url":"/devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"88085780-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/7abea390-0361-42f3-b16f-a062b1f1e23e? 200 14ms","method":"GET","requestID":"88085780-6a0a-11ef-9b41-2363e6623fc8","responseTime":14,"status":200,"url":"/devices/7abea390-0361-42f3-b16f-a062b1f1e23e?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/be744af9-701b-40ef-bb51-006f221e1000"},"level":"info","message":"Setting up experiment","requestID":"f1cbaf61c73aeadcee9169818e6e9914"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/be744af9-701b-40ef-bb51-006f221e1000"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"f1cbaf61c73aeadcee9169818e6e9914"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/be744af9-701b-40ef-bb51-006f221e1000"},"level":"info","message":"Successfully locked booking for experiment","requestID":"f1cbaf61c73aeadcee9169818e6e9914"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/be744af9-701b-40ef-bb51-006f221e1000"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"f1cbaf61c73aeadcee9169818e6e9914"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/be744af9-701b-40ef-bb51-006f221e1000"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"f1cbaf61c73aeadcee9169818e6e9914"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/be744af9-701b-40ef-bb51-006f221e1000"},"level":"info","message":"Attempting to update booking for experiment","requestID":"f1cbaf61c73aeadcee9169818e6e9914"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/be744af9-701b-40ef-bb51-006f221e1000"},"level":"info","message":"Successfully updated booking for experiment","requestID":"f1cbaf61c73aeadcee9169818e6e9914"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/be744af9-701b-40ef-bb51-006f221e1000"},"level":"info","message":"Successfully set up experiment","requestID":"f1cbaf61c73aeadcee9169818e6e9914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"88143e60-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"88148c80-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8814b390-6a0a-11ef-9b41-2363e6623fc8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/be744af9-701b-40ef-bb51-006f221e1000"},"level":"info","message":"Successfully running experiment","requestID":"f1cbaf61c73aeadcee9169818e6e9914"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":392,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:13Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":392,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.69389,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:13Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":393,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"88143e60-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377893,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5M30.gDI2wFFFB6GohzIjhgBOBhJNRlXjNk9jsKQVM9tgdTY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"88143e60-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":393,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.930554,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:13Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":394,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7abea390-0361-42f3-b16f-a062b1f1e23e","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"88148c80-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/7abea390-0361-42f3-b16f-a062b1f1e23e","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377893,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5M30.gDI2wFFFB6GohzIjhgBOBhJNRlXjNk9jsKQVM9tgdTY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"88148c80-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":394,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.896525,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:13Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5e4fb866-2857-491a-9bc7-bff887a4d4a3","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377893.712349} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8814b390-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","object_type":"device","rebac_allow":false,"scope_allow":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":"8814b390-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:11.392607040Z"}]},"request_id":"ae2a8405-8a6a-4128-8083-15d975f62cfe","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377893.7160325} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"88143e60-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7abea390-0361-42f3-b16f-a062b1f1e23e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7abea390-0361-42f3-b16f-a062b1f1e23e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:11.441948447Z"}]},"request_id":"7fd22d3a-4a74-4d03-9be6-8408130d1bcd","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377893.7201195} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"88148c80-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8814b390-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82/signaling 200 18ms","method":"POST","requestID":"8814b390-6a0a-11ef-9b41-2363e6623fc8","responseTime":18,"status":200,"url":"/devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8817e7e0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"88143e60-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82? 200 28ms","method":"GET","requestID":"88143e60-6a0a-11ef-9b41-2363e6623fc8","responseTime":28,"status":200,"url":"/devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"88148c80-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/7abea390-0361-42f3-b16f-a062b1f1e23e? 200 28ms","method":"GET","requestID":"88148c80-6a0a-11ef-9b41-2363e6623fc8","responseTime":28,"status":200,"url":"/devices/7abea390-0361-42f3-b16f-a062b1f1e23e?"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":395,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:13Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fbe744af9-701b-40ef-bb51-006f221e1000#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fbe744af9-701b-40ef-bb51-006f221e1000","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"701cd113-b337-4e78-8b8a-531d979d7944","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377893.7342806} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7abea390-0361-42f3-b16f-a062b1f1e23e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7a55bb6a-291f-40c4-9008-8e779dea8b28","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377893.7345328} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"81a98be6-dc63-467b-b2e8-91012cb0bc60","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377893.7347136} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"88196e80-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":395,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.468199,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7abea390-0361-42f3-b16f-a062b1f1e23e","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8817e7e0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7abea390-0361-42f3-b16f-a062b1f1e23e","object_type":"device","rebac_allow":false,"scope_allow":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":"8817e7e0-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 27ms","method":"POST","requestID":"f1cbaf61c73aeadcee9169818e6e9914","responseTime":27,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":396,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:13Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8817e7e0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/7abea390-0361-42f3-b16f-a062b1f1e23e/signaling 200 16ms","method":"POST","requestID":"8817e7e0-6a0a-11ef-9b41-2363e6623fc8","responseTime":16,"status":200,"url":"/devices/7abea390-0361-42f3-b16f-a062b1f1e23e/signaling"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"14288d7f-de53-45a6-9804-677dd6a18aff","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377893.7436364} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":396,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.347766,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"88196e80-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","object_type":"device","rebac_allow":false,"scope_allow":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":"88196e80-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/be744af9-701b-40ef-bb51-006f221e1000","user":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"f1cbaf61c73aeadcee9169818e6e9914"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"88196e80-6a0a-11ef-9b41-2363e6623fc8"} gateway-1 | {"time_local":"03/Sep/2024:15:38:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1291","request_time":"0.180","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f1cbaf61c73aeadcee9169818e6e9914"} experiment-1 | {"level":"info","message":"POST /experiments? 201 175ms","method":"POST","requestID":"f1cbaf61c73aeadcee9169818e6e9914","responseTime":175,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"POST /devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82/signaling 200 14ms","method":"POST","requestID":"88196e80-6a0a-11ef-9b41-2363e6623fc8","responseTime":14,"status":200,"url":"/devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"881c2da0-6a0a-11ef-9b41-2363e6623fc8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5M30.gDI2wFFFB6GohzIjhgBOBhJNRlXjNk9jsKQVM9tgdTY","level":"info","message":"auth send jwt","requestID":"4997419b99151b430273138f15d15c93"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4997419b99151b430273138f15d15c93","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":397,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:13Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4997419b99151b430273138f15d15c93"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7abea390-0361-42f3-b16f-a062b1f1e23e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"28521122-5797-4479-9ccb-99c71b529904","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377893.7591472} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":397,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.84639,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:13Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":398,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7abea390-0361-42f3-b16f-a062b1f1e23e","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"881c2da0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7abea390-0361-42f3-b16f-a062b1f1e23e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"881c2da0-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":398,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.880183,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"4997419b99151b430273138f15d15c93","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377893,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5M30.gDI2wFFFB6GohzIjhgBOBhJNRlXjNk9jsKQVM9tgdTY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4997419b99151b430273138f15d15c93","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:11.392607040Z"}]},"request_id":"857ec2cf-b5a1-41c7-9a03-7623edbccaf8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377893.769395} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"881c2da0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/7abea390-0361-42f3-b16f-a062b1f1e23e/signaling 200 16ms","method":"POST","requestID":"881c2da0-6a0a-11ef-9b41-2363e6623fc8","responseTime":16,"status":200,"url":"/devices/7abea390-0361-42f3-b16f-a062b1f1e23e/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"4997419b99151b430273138f15d15c93","responseTime":5,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/be744af9-701b-40ef-bb51-006f221e1000"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"f1cbaf61c73aeadcee9169818e6e9914"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/be744af9-701b-40ef-bb51-006f221e1000"},"level":"info","message":"Building connection plan","requestID":"f1cbaf61c73aeadcee9169818e6e9914"} 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":"018e75d0-3328-4fe2-b47c-a157a6f7baa6"},{"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":"fd7e72db-f502-4f1f-9262-4ebd7d7cd127"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"fd9af444-b628-44c3-8a81-76caf110042b"}]},"level":"info","message":"Built pairwise service configurations","requestID":"f1cbaf61c73aeadcee9169818e6e9914"} 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/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/7abea390-0361-42f3-b16f-a062b1f1e23e"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"f1cbaf61c73aeadcee9169818e6e9914"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"881f3ae0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4997419b99151b430273138f15d15c93"} gateway-1 | {"time_local":"03/Sep/2024:15:38:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82? 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":"4997419b99151b430273138f15d15c93"} device-1 | {"level":"info","message":"GET /devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82? 200 20ms","method":"GET","requestID":"4997419b99151b430273138f15d15c93","responseTime":20,"status":200,"url":"/devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82?"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":399,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:13Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":399,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.941993,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:13Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"881f3ae0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377893,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5M30.gDI2wFFFB6GohzIjhgBOBhJNRlXjNk9jsKQVM9tgdTY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"881f3ae0-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5M30.gDI2wFFFB6GohzIjhgBOBhJNRlXjNk9jsKQVM9tgdTY","level":"info","message":"auth send jwt","requestID":"230f60b7318be3713d0ce31fc4e55de9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"230f60b7318be3713d0ce31fc4e55de9","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"230f60b7318be3713d0ce31fc4e55de9"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":400,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:13Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":400,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.057975,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7abea390-0361-42f3-b16f-a062b1f1e23e","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"230f60b7318be3713d0ce31fc4e55de9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/7abea390-0361-42f3-b16f-a062b1f1e23e","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377893,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5M30.gDI2wFFFB6GohzIjhgBOBhJNRlXjNk9jsKQVM9tgdTY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"230f60b7318be3713d0ce31fc4e55de9","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","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%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"30fc8e33-8d34-41ad-b2a5-23b71ce4923e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377893.7944372} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6ca97e1d-863d-40d6-8712-7c4947267ba8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377893.7948012} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7abea390-0361-42f3-b16f-a062b1f1e23e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7abea390-0361-42f3-b16f-a062b1f1e23e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:11.441948447Z"}]},"request_id":"7624f263-e2a4-4b73-bbbb-9572f8ad45e1","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377893.7958534} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"881f3ae0-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/relations/update"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"230f60b7318be3713d0ce31fc4e55de9","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"230f60b7318be3713d0ce31fc4e55de9"} gateway-1 | {"time_local":"03/Sep/2024:15:38:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7abea390-0361-42f3-b16f-a062b1f1e23e? 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":"230f60b7318be3713d0ce31fc4e55de9"} device-1 | {"level":"info","message":"GET /devices/7abea390-0361-42f3-b16f-a062b1f1e23e? 200 21ms","method":"GET","requestID":"230f60b7318be3713d0ce31fc4e55de9","responseTime":21,"status":200,"url":"/devices/7abea390-0361-42f3-b16f-a062b1f1e23e?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"881f3ae0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"881f3ae0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/2223c5a9-3333-428c-9a6f-5d4a95659863'","requestID":"881f3ae0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/2223c5a9-3333-428c-9a6f-5d4a95659863'","requestID":"881f3ae0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"881f3ae0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 41ms","method":"POST","requestID":"881f3ae0-6a0a-11ef-9b41-2363e6623fc8","responseTime":41,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"881f3ae0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/2223c5a9-3333-428c-9a6f-5d4a95659863","device":"5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","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/be744af9-701b-40ef-bb51-006f221e1000"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"f1cbaf61c73aeadcee9169818e6e9914"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"882afab0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":401,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:13Z"} device-1 | {"device":"5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2be9758c-5ac4-400f-a461-1aace901367e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377893.855962} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":401,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.785266,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"882afab0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"882afab0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"882afab0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82/signaling 200 9ms","method":"POST","requestID":"882afab0-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"882ca860-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":402,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:13Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7abea390-0361-42f3-b16f-a062b1f1e23e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9e00b6b3-42de-4731-a7df-12bd05717180","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377893.866079} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":402,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.149098,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7abea390-0361-42f3-b16f-a062b1f1e23e","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"882ca860-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7abea390-0361-42f3-b16f-a062b1f1e23e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"882ca860-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"882ca860-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/7abea390-0361-42f3-b16f-a062b1f1e23e/signaling 200 8ms","method":"POST","requestID":"882ca860-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/devices/7abea390-0361-42f3-b16f-a062b1f1e23e/signaling"} device-1 | {"device":"7abea390-0361-42f3-b16f-a062b1f1e23e","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":"2223c5a9-3333-428c-9a6f-5d4a95659863","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 8239064693366735686 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:L2pf\r\na=ice-pwd:ZVdwOgb6ydUPiW7EKq4rbmPT\r\na=ice-options:trickle\r\na=fingerprint:sha-256 D2:D8:EB:E9:7B:3F:7E:A5:E2:28:2B:6F:F0:EF:5E:02:44:1D:2C:45:A3:36:6D:B6:EA:13:83:1D:B0:38:68:49\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:719590460 1 udp 2113937151 5aef043f-b011-4e8a-87cc-c632f0404271.local 42977 typ host generation 0 ufrag L2pf network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:2932440643 1 udp 1677729535 141.24.211.56 42977 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag L2pf network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"7abea390-0361-42f3-b16f-a062b1f1e23e","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":"7abea390-0361-42f3-b16f-a062b1f1e23e","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":"7abea390-0361-42f3-b16f-a062b1f1e23e","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/2223c5a9-3333-428c-9a6f-5d4a95659863' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2223c5a9-3333-428c-9a6f-5d4a95659863","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"16c655965914a5db3199d0b3461ef3bc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82'"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"16c655965914a5db3199d0b3461ef3bc","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/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/7abea390-0361-42f3-b16f-a062b1f1e23e"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/2223c5a9-3333-428c-9a6f-5d4a95659863"}}},"level":"info","message":"received a callback","requestID":"16c655965914a5db3199d0b3461ef3bc"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"16c655965914a5db3199d0b3461ef3bc","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"16c655965914a5db3199d0b3461ef3bc"} device-1 | {"data":{"peerconnection":"2223c5a9-3333-428c-9a6f-5d4a95659863","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"7abea390-0361-42f3-b16f-a062b1f1e23e","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":"5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"7abea390-0361-42f3-b16f-a062b1f1e23e","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":"2223c5a9-3333-428c-9a6f-5d4a95659863","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","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/2223c5a9-3333-428c-9a6f-5d4a95659863' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2223c5a9-3333-428c-9a6f-5d4a95659863","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c1c6c5b55e497d5a7394e489da24d36e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"c1c6c5b55e497d5a7394e489da24d36e","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/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/7abea390-0361-42f3-b16f-a062b1f1e23e"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/2223c5a9-3333-428c-9a6f-5d4a95659863"}}},"level":"info","message":"received a callback","requestID":"c1c6c5b55e497d5a7394e489da24d36e"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"8976b490-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":403,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:16Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2223c5a9-3333-428c-9a6f-5d4a95659863","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1ff8f98b-76c1-4305-bdba-8e97616c71cd","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377896.0337284} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":403,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":4.075975,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2223c5a9-3333-428c-9a6f-5d4a95659863","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8976b490-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/2223c5a9-3333-428c-9a6f-5d4a95659863","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":"8976b490-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"8976b490-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /peerconnections/2223c5a9-3333-428c-9a6f-5d4a95659863 200 15ms","method":"GET","requestID":"8976b490-6a0a-11ef-9b41-2363e6623fc8","responseTime":15,"status":200,"url":"/peerconnections/2223c5a9-3333-428c-9a6f-5d4a95659863"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 52ms","method":"POST","requestID":"c1c6c5b55e497d5a7394e489da24d36e","responseTime":52,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.058","http_referrer":"","http_user_agent":"node-fetch","requestID":"c1c6c5b55e497d5a7394e489da24d36e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"897d6b50-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":404,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:16Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6f8af6bb-acaf-445e-87e1-d6261a8d3e14","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377896.0753698} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":404,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.301591,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"897d6b50-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"897d6b50-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"897d6b50-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82/signaling 200 14ms","method":"POST","requestID":"897d6b50-6a0a-11ef-9b41-2363e6623fc8","responseTime":14,"status":200,"url":"/devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"89802a70-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":405,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:16Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7abea390-0361-42f3-b16f-a062b1f1e23e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5ee836b4-1a8d-4790-b4ba-2ae0cc6be334","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377896.093436} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":405,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.77745,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7abea390-0361-42f3-b16f-a062b1f1e23e","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"89802a70-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7abea390-0361-42f3-b16f-a062b1f1e23e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"89802a70-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"89802a70-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/7abea390-0361-42f3-b16f-a062b1f1e23e/signaling 200 13ms","method":"POST","requestID":"89802a70-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/devices/7abea390-0361-42f3-b16f-a062b1f1e23e/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5Nn0.gSqcPbs29HUyce6DmXNHPw7gXzJZleEkl74nduxmZrA","level":"info","message":"auth send jwt","requestID":"5606f8d7b7ebf58c1982a26915a1c8e9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5606f8d7b7ebf58c1982a26915a1c8e9","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/be744af9-701b-40ef-bb51-006f221e1000","requestID":"5606f8d7b7ebf58c1982a26915a1c8e9"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":406,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:16Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":406,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.844423,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/be744af9-701b-40ef-bb51-006f221e1000","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"5606f8d7b7ebf58c1982a26915a1c8e9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/be744af9-701b-40ef-bb51-006f221e1000","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377896,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5Nn0.gSqcPbs29HUyce6DmXNHPw7gXzJZleEkl74nduxmZrA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5606f8d7b7ebf58c1982a26915a1c8e9","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/be744af9-701b-40ef-bb51-006f221e1000","requestID":"5606f8d7b7ebf58c1982a26915a1c8e9"} gateway-1 | {"time_local":"03/Sep/2024:15:38:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/be744af9-701b-40ef-bb51-006f221e1000 HTTP/1.1","status": "200","body_bytes_sent":"1364","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5606f8d7b7ebf58c1982a26915a1c8e9"} experiment-1 | {"level":"info","message":"GET /experiments/be744af9-701b-40ef-bb51-006f221e1000 200 13ms","method":"GET","requestID":"5606f8d7b7ebf58c1982a26915a1c8e9","responseTime":13,"status":200,"url":"/experiments/be744af9-701b-40ef-bb51-006f221e1000"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5Nn0.gSqcPbs29HUyce6DmXNHPw7gXzJZleEkl74nduxmZrA","level":"info","message":"auth send jwt","requestID":"65fcb22fe9046c47ee90e385f3ff220a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"65fcb22fe9046c47ee90e385f3ff220a","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/be744af9-701b-40ef-bb51-006f221e1000","requestID":"65fcb22fe9046c47ee90e385f3ff220a"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":407,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:16Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":407,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.797226,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:16Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/be744af9-701b-40ef-bb51-006f221e1000","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"65fcb22fe9046c47ee90e385f3ff220a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/be744af9-701b-40ef-bb51-006f221e1000","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377896,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5Nn0.gSqcPbs29HUyce6DmXNHPw7gXzJZleEkl74nduxmZrA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"65fcb22fe9046c47ee90e385f3ff220a","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/be744af9-701b-40ef-bb51-006f221e1000"},"level":"info","message":"Attempting to finish experiment","requestID":"65fcb22fe9046c47ee90e385f3ff220a"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"8989c760-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":408,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:16Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":408,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":2.208411,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:16Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2223c5a9-3333-428c-9a6f-5d4a95659863","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8989c760-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:http://localhost/peerconnections/2223c5a9-3333-428c-9a6f-5d4a95659863","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377896,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5Nn0.gSqcPbs29HUyce6DmXNHPw7gXzJZleEkl74nduxmZrA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8989c760-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/2223c5a9-3333-428c-9a6f-5d4a95659863","device":"5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"7abea390-0361-42f3-b16f-a062b1f1e23e","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":"7abea390-0361-42f3-b16f-a062b1f1e23e","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":"7abea390-0361-42f3-b16f-a062b1f1e23e","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/2223c5a9-3333-428c-9a6f-5d4a95659863' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/2223c5a9-3333-428c-9a6f-5d4a95659863' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2223c5a9-3333-428c-9a6f-5d4a95659863","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2223c5a9-3333-428c-9a6f-5d4a95659863': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2223c5a9-3333-428c-9a6f-5d4a95659863","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"81a512a5-c409-4d15-b35c-c8712cfdbbf6","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377896.173081} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"59630260-efea-464b-a988-84e819853f1e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377896.1736507} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"8989c760-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bfcd6240909886defdc6927daf99db03","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"bfcd6240909886defdc6927daf99db03","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"16ac316a9aef3a6d78f7ae2417f4f481","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/7abea390-0361-42f3-b16f-a062b1f1e23e"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/2223c5a9-3333-428c-9a6f-5d4a95659863"}}},"level":"info","message":"received a callback","requestID":"bfcd6240909886defdc6927daf99db03"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"16ac316a9aef3a6d78f7ae2417f4f481","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/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/7abea390-0361-42f3-b16f-a062b1f1e23e"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/2223c5a9-3333-428c-9a6f-5d4a95659863"}}},"level":"info","message":"received a callback","requestID":"16ac316a9aef3a6d78f7ae2417f4f481"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"8989c760-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"DELETE /peerconnections/2223c5a9-3333-428c-9a6f-5d4a95659863 204 40ms","method":"DELETE","requestID":"8989c760-6a0a-11ef-9b41-2363e6623fc8","responseTime":40,"status":204,"url":"/peerconnections/2223c5a9-3333-428c-9a6f-5d4a95659863"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/be744af9-701b-40ef-bb51-006f221e1000"},"level":"info","message":"Successfully finished experiment","requestID":"65fcb22fe9046c47ee90e385f3ff220a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8992c810-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":409,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:16Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ddb9dbeb-39a5-488e-b968-42436c630d02","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377896.2149167} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":409,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.391049,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8992c810-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8992c810-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8992c810-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82/signaling 200 11ms","method":"POST","requestID":"8992c810-6a0a-11ef-9b41-2363e6623fc8","responseTime":11,"status":200,"url":"/devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82/signaling"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fbe744af9-701b-40ef-bb51-006f221e1000': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fbe744af9-701b-40ef-bb51-006f221e1000","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"f096b9c8-e15a-45a4-a5ab-f4b2ad4a8a09","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377896.2225869} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5b94f9ea-f476-45c3-94e4-3a86180434a3","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377896.2231143} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8994eaf0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"65fcb22fe9046c47ee90e385f3ff220a","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":410,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:16Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7abea390-0361-42f3-b16f-a062b1f1e23e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"632eead8-fc0b-4f0a-889b-333359ffec21","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377896.229364} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":410,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.8411,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7abea390-0361-42f3-b16f-a062b1f1e23e","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8994eaf0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7abea390-0361-42f3-b16f-a062b1f1e23e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8994eaf0-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8994eaf0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/7abea390-0361-42f3-b16f-a062b1f1e23e/signaling 200 11ms","method":"POST","requestID":"8994eaf0-6a0a-11ef-9b41-2363e6623fc8","responseTime":11,"status":200,"url":"/devices/7abea390-0361-42f3-b16f-a062b1f1e23e/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/be744af9-701b-40ef-bb51-006f221e1000","requestID":"65fcb22fe9046c47ee90e385f3ff220a"} gateway-1 | {"time_local":"03/Sep/2024:15:38:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/be744af9-701b-40ef-bb51-006f221e1000 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.157","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"65fcb22fe9046c47ee90e385f3ff220a"} gateway-1 | {"time_local":"03/Sep/2024:15:38:16 +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.307","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"954b4fe0ac1c19ca38c504172ec05f3f"} experiment-1 | {"level":"info","message":"DELETE /experiments/be744af9-701b-40ef-bb51-006f221e1000 204 155ms","method":"DELETE","requestID":"65fcb22fe9046c47ee90e385f3ff220a","responseTime":155,"status":204,"url":"/experiments/be744af9-701b-40ef-bb51-006f221e1000"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 112ms","method":"POST","requestID":"bfcd6240909886defdc6927daf99db03","responseTime":112,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5Nn0.gSqcPbs29HUyce6DmXNHPw7gXzJZleEkl74nduxmZrA","level":"info","message":"auth send jwt","requestID":"730b5050d08a8f225bf8026a6f400c16"} gateway-1 | {"time_local":"03/Sep/2024:15:38:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.118","http_referrer":"","http_user_agent":"node-fetch","requestID":"bfcd6240909886defdc6927daf99db03"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"730b5050d08a8f225bf8026a6f400c16","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"730b5050d08a8f225bf8026a6f400c16"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 116ms","method":"POST","requestID":"16ac316a9aef3a6d78f7ae2417f4f481","responseTime":116,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.122","http_referrer":"","http_user_agent":"node-fetch","requestID":"16ac316a9aef3a6d78f7ae2417f4f481"} gateway-1 | {"time_local":"03/Sep/2024:15:38:16 +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.798","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"efcdd7cfdb03f4dc394336fb09c62868"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/7abea390-0361-42f3-b16f-a062b1f1e23e' closed"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":411,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:16Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":411,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.774292,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:16Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"730b5050d08a8f225bf8026a6f400c16","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377896,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5Nn0.gSqcPbs29HUyce6DmXNHPw7gXzJZleEkl74nduxmZrA"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"730b5050d08a8f225bf8026a6f400c16","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/5b0c8852-67d3-4ea4-9c91-d36b2d2eae82' 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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa132f603-5e33-439a-a840-d3f32cf1608f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"3b30ed1a-2a74-4632-8f72-f5052eb44332","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377896.3236642} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"730b5050d08a8f225bf8026a6f400c16","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"19b31b07-d07f-4cab-98e6-d829bd618600","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377896.3294766} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"730b5050d08a8f225bf8026a6f400c16","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa132f603-5e33-439a-a840-d3f32cf1608f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"b84e2c8e-13ed-4fb4-96ee-8585ffc762c3","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377896.338253} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"15b6597a-65ac-4faa-a6b2-d8edb48a62e1","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377896.3385942} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"730b5050d08a8f225bf8026a6f400c16","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa132f603-5e33-439a-a840-d3f32cf1608f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa132f603-5e33-439a-a840-d3f32cf1608f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:16.338233258Z"}]},"request_id":"86b556e8-333d-4f99-86e4-5e2392e911dc","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377896.3426132} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"730b5050d08a8f225bf8026a6f400c16","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"730b5050d08a8f225bf8026a6f400c16"} gateway-1 | {"time_local":"03/Sep/2024:15:38:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.056","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"730b5050d08a8f225bf8026a6f400c16"} device-1 | {"level":"info","message":"POST /devices? 201 51ms","method":"POST","requestID":"730b5050d08a8f225bf8026a6f400c16","responseTime":51,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5Nn0.gSqcPbs29HUyce6DmXNHPw7gXzJZleEkl74nduxmZrA","level":"info","message":"auth send jwt","requestID":"69a2d1ab1d68e326178b9f8df020ae55"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"69a2d1ab1d68e326178b9f8df020ae55","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"69a2d1ab1d68e326178b9f8df020ae55"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":412,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:16Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":412,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.677772,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:16Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"69a2d1ab1d68e326178b9f8df020ae55","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377896,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5Nn0.gSqcPbs29HUyce6DmXNHPw7gXzJZleEkl74nduxmZrA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"69a2d1ab1d68e326178b9f8df020ae55","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F056fadf3-1d38-42af-a426-61d4481893d8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9e8c6e21-152f-4080-a873-2dcee352f81b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377896.3700445} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"69a2d1ab1d68e326178b9f8df020ae55","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"63ad0ef1-c1d4-40af-ba6e-3709932806fd","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377896.3750243} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"69a2d1ab1d68e326178b9f8df020ae55","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F056fadf3-1d38-42af-a426-61d4481893d8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"b0fe1e56-8d86-4254-918f-836b7a3a494b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377896.3867364} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"da2b64ab-3d27-4f3c-937d-b8e313c1f86f","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377896.3868105} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"69a2d1ab1d68e326178b9f8df020ae55","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F056fadf3-1d38-42af-a426-61d4481893d8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F056fadf3-1d38-42af-a426-61d4481893d8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:16.386712711Z"}]},"request_id":"7bf5b5cb-aa83-45b3-9d28-d5bb269e7021","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377896.390988} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"69a2d1ab1d68e326178b9f8df020ae55","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"69a2d1ab1d68e326178b9f8df020ae55"} gateway-1 | {"time_local":"03/Sep/2024:15:38:16 +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":"69a2d1ab1d68e326178b9f8df020ae55"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"69a2d1ab1d68e326178b9f8df020ae55","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5Nn0.gSqcPbs29HUyce6DmXNHPw7gXzJZleEkl74nduxmZrA","level":"info","message":"auth send jwt","requestID":"ee9bd0c87af24cae18d1fa1ca6b165cd"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ee9bd0c87af24cae18d1fa1ca6b165cd","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"ee9bd0c87af24cae18d1fa1ca6b165cd"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":413,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:16Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":413,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.158548,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:16Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/056fadf3-1d38-42af-a426-61d4481893d8","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"ee9bd0c87af24cae18d1fa1ca6b165cd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/056fadf3-1d38-42af-a426-61d4481893d8","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377896,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5Nn0.gSqcPbs29HUyce6DmXNHPw7gXzJZleEkl74nduxmZrA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ee9bd0c87af24cae18d1fa1ca6b165cd","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F056fadf3-1d38-42af-a426-61d4481893d8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F056fadf3-1d38-42af-a426-61d4481893d8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:16.386712711Z"}]},"request_id":"64026989-b3be-43fc-bdf0-2b9c78299cb2","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377896.856048} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ee9bd0c87af24cae18d1fa1ca6b165cd","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5afb1dce-cd14-41b1-9bde-4766304d76ce","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377896.8618274} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"ee9bd0c87af24cae18d1fa1ca6b165cd","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F056fadf3-1d38-42af-a426-61d4481893d8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F056fadf3-1d38-42af-a426-61d4481893d8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:16.386712711Z"}]},"request_id":"3c5cf1a7-b168-404e-9af4-77763dcc6ac9","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377896.8746176} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ee9bd0c87af24cae18d1fa1ca6b165cd","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"ee9bd0c87af24cae18d1fa1ca6b165cd"} gateway-1 | {"time_local":"03/Sep/2024:15:38:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/056fadf3-1d38-42af-a426-61d4481893d8 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.039","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"ee9bd0c87af24cae18d1fa1ca6b165cd"} device-1 | {"level":"info","message":"PATCH /devices/056fadf3-1d38-42af-a426-61d4481893d8 200 35ms","method":"PATCH","requestID":"ee9bd0c87af24cae18d1fa1ca6b165cd","responseTime":35,"status":200,"url":"/devices/056fadf3-1d38-42af-a426-61d4481893d8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5Nn0.gSqcPbs29HUyce6DmXNHPw7gXzJZleEkl74nduxmZrA","level":"info","message":"auth send jwt","requestID":"4073e7f595998475e777e6ef50d72620"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4073e7f595998475e777e6ef50d72620","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"4073e7f595998475e777e6ef50d72620"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":414,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:16Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":414,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.063874,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:16Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/056fadf3-1d38-42af-a426-61d4481893d8","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"4073e7f595998475e777e6ef50d72620","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/056fadf3-1d38-42af-a426-61d4481893d8","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377896,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5Nn0.gSqcPbs29HUyce6DmXNHPw7gXzJZleEkl74nduxmZrA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4073e7f595998475e777e6ef50d72620","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"4073e7f595998475e777e6ef50d72620"} device-1 | {"level":"info","message":"POST /devices/056fadf3-1d38-42af-a426-61d4481893d8/websocket 200 22ms","method":"POST","requestID":"4073e7f595998475e777e6ef50d72620","responseTime":22,"status":200,"url":"/devices/056fadf3-1d38-42af-a426-61d4481893d8/websocket"} gateway-1 | {"time_local":"03/Sep/2024:15:38:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/056fadf3-1d38-42af-a426-61d4481893d8/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"4073e7f595998475e777e6ef50d72620"} device-1 | {"level":"info","message":"device 'http://localhost/devices/056fadf3-1d38-42af-a426-61d4481893d8' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c4a6f5ca69f9730704fbeafbb7fa36c7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"c4a6f5ca69f9730704fbeafbb7fa36c7","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"03/Sep/2024:15:38:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a132f603-5e33-439a-a840-d3f32cf1608f/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":"c4a6f5ca69f9730704fbeafbb7fa36c7"} device-1 | {"level":"info","message":"OPTIONS /devices/a132f603-5e33-439a-a840-d3f32cf1608f/websocket 200 1ms","method":"OPTIONS","requestID":"c4a6f5ca69f9730704fbeafbb7fa36c7","responseTime":1,"status":200,"url":"/devices/a132f603-5e33-439a-a840-d3f32cf1608f/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5OH0.D_aKZAZJPgNqV2dRt7z6jTuy4jJcir62mETu8eGepT8","level":"info","message":"auth send jwt","requestID":"d4992a8c0ad2413ff31afef89cdb029a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d4992a8c0ad2413ff31afef89cdb029a","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"d4992a8c0ad2413ff31afef89cdb029a"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":415,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:18Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":415,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.23866,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:18Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a132f603-5e33-439a-a840-d3f32cf1608f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"d4992a8c0ad2413ff31afef89cdb029a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/a132f603-5e33-439a-a840-d3f32cf1608f","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377898,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5OH0.D_aKZAZJPgNqV2dRt7z6jTuy4jJcir62mETu8eGepT8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d4992a8c0ad2413ff31afef89cdb029a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"d4992a8c0ad2413ff31afef89cdb029a"} gateway-1 | {"time_local":"03/Sep/2024:15:38:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a132f603-5e33-439a-a840-d3f32cf1608f/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":"d4992a8c0ad2413ff31afef89cdb029a"} device-1 | {"level":"info","message":"POST /devices/a132f603-5e33-439a-a840-d3f32cf1608f/websocket 200 23ms","method":"POST","requestID":"d4992a8c0ad2413ff31afef89cdb029a","responseTime":23,"status":200,"url":"/devices/a132f603-5e33-439a-a840-d3f32cf1608f/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a132f603-5e33-439a-a840-d3f32cf1608f' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5OH0.D_aKZAZJPgNqV2dRt7z6jTuy4jJcir62mETu8eGepT8","level":"info","message":"auth send jwt","requestID":"3deacb46226227673f6264d435ac43da"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3deacb46226227673f6264d435ac43da","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3deacb46226227673f6264d435ac43da"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":416,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:18Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":416,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.151916,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a132f603-5e33-439a-a840-d3f32cf1608f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"3deacb46226227673f6264d435ac43da","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/a132f603-5e33-439a-a840-d3f32cf1608f","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377898,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5OH0.D_aKZAZJPgNqV2dRt7z6jTuy4jJcir62mETu8eGepT8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3deacb46226227673f6264d435ac43da","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa132f603-5e33-439a-a840-d3f32cf1608f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa132f603-5e33-439a-a840-d3f32cf1608f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:16.338233258Z"}]},"request_id":"aadb63eb-c486-479a-bb60-ec02218255f8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377898.4956417} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3deacb46226227673f6264d435ac43da","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3deacb46226227673f6264d435ac43da"} gateway-1 | {"time_local":"03/Sep/2024:15:38:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a132f603-5e33-439a-a840-d3f32cf1608f? 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":"3deacb46226227673f6264d435ac43da"} device-1 | {"level":"info","message":"GET /devices/a132f603-5e33-439a-a840-d3f32cf1608f? 200 19ms","method":"GET","requestID":"3deacb46226227673f6264d435ac43da","responseTime":19,"status":200,"url":"/devices/a132f603-5e33-439a-a840-d3f32cf1608f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5OH0.D_aKZAZJPgNqV2dRt7z6jTuy4jJcir62mETu8eGepT8","level":"info","message":"auth send jwt","requestID":"a22d23c5e7442269a3dd8d7fb2496941"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a22d23c5e7442269a3dd8d7fb2496941","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a22d23c5e7442269a3dd8d7fb2496941"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":417,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:18Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":417,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.21181,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/056fadf3-1d38-42af-a426-61d4481893d8","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a22d23c5e7442269a3dd8d7fb2496941","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/056fadf3-1d38-42af-a426-61d4481893d8","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377898,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5OH0.D_aKZAZJPgNqV2dRt7z6jTuy4jJcir62mETu8eGepT8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a22d23c5e7442269a3dd8d7fb2496941","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F056fadf3-1d38-42af-a426-61d4481893d8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F056fadf3-1d38-42af-a426-61d4481893d8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:16.386712711Z"}]},"request_id":"6b8f3183-f703-4a31-953d-f92c924e754d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377898.522793} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a22d23c5e7442269a3dd8d7fb2496941","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a22d23c5e7442269a3dd8d7fb2496941"} gateway-1 | {"time_local":"03/Sep/2024:15:38:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/056fadf3-1d38-42af-a426-61d4481893d8? 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":"a22d23c5e7442269a3dd8d7fb2496941"} device-1 | {"level":"info","message":"GET /devices/056fadf3-1d38-42af-a426-61d4481893d8? 200 18ms","method":"GET","requestID":"a22d23c5e7442269a3dd8d7fb2496941","responseTime":18,"status":200,"url":"/devices/056fadf3-1d38-42af-a426-61d4481893d8?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5OH0.D_aKZAZJPgNqV2dRt7z6jTuy4jJcir62mETu8eGepT8","level":"info","message":"auth send jwt","requestID":"65cee765bd9cf4128dc2966ba85a6fe6"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"65cee765bd9cf4128dc2966ba85a6fe6","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"65cee765bd9cf4128dc2966ba85a6fe6"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":418,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:18Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":418,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.806589,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:18Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"65cee765bd9cf4128dc2966ba85a6fe6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377898,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5OH0.D_aKZAZJPgNqV2dRt7z6jTuy4jJcir62mETu8eGepT8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"65cee765bd9cf4128dc2966ba85a6fe6","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/de6da069-1145-425b-a992-aaa7730aef25"},"level":"info","message":"Attempting to run experiment","requestID":"65cee765bd9cf4128dc2966ba85a6fe6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/de6da069-1145-425b-a992-aaa7730aef25"},"level":"info","message":"Attempting to book experiment","requestID":"65cee765bd9cf4128dc2966ba85a6fe6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/de6da069-1145-425b-a992-aaa7730aef25"},"level":"info","message":"Successfully booked experiment","requestID":"65cee765bd9cf4128dc2966ba85a6fe6"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8afd2d80-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8afd7ba0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":419,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:18Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":419,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.069567,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:18Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":420,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a132f603-5e33-439a-a840-d3f32cf1608f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8afd2d80-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/a132f603-5e33-439a-a840-d3f32cf1608f","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377898,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5OH0.D_aKZAZJPgNqV2dRt7z6jTuy4jJcir62mETu8eGepT8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8afd2d80-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":420,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.190411,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/056fadf3-1d38-42af-a426-61d4481893d8","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8afd7ba0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/056fadf3-1d38-42af-a426-61d4481893d8","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377898,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5OH0.D_aKZAZJPgNqV2dRt7z6jTuy4jJcir62mETu8eGepT8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8afd7ba0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa132f603-5e33-439a-a840-d3f32cf1608f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa132f603-5e33-439a-a840-d3f32cf1608f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:16.338233258Z"}]},"request_id":"ba84f70d-db0b-404c-a0c2-f6b881c6ffb1","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377898.5967479} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"8afd2d80-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F056fadf3-1d38-42af-a426-61d4481893d8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F056fadf3-1d38-42af-a426-61d4481893d8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:16.386712711Z"}]},"request_id":"f764f129-8b22-4670-a9bb-74ed6462ceb5","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377898.5985305} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8afd7ba0-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8afd2d80-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/a132f603-5e33-439a-a840-d3f32cf1608f? 200 22ms","method":"GET","requestID":"8afd2d80-6a0a-11ef-9b41-2363e6623fc8","responseTime":22,"status":200,"url":"/devices/a132f603-5e33-439a-a840-d3f32cf1608f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8afd7ba0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/056fadf3-1d38-42af-a426-61d4481893d8? 200 22ms","method":"GET","requestID":"8afd7ba0-6a0a-11ef-9b41-2363e6623fc8","responseTime":22,"status":200,"url":"/devices/056fadf3-1d38-42af-a426-61d4481893d8?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/de6da069-1145-425b-a992-aaa7730aef25"},"level":"info","message":"Setting up experiment","requestID":"65cee765bd9cf4128dc2966ba85a6fe6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/de6da069-1145-425b-a992-aaa7730aef25"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"65cee765bd9cf4128dc2966ba85a6fe6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/de6da069-1145-425b-a992-aaa7730aef25"},"level":"info","message":"Successfully locked booking for experiment","requestID":"65cee765bd9cf4128dc2966ba85a6fe6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/de6da069-1145-425b-a992-aaa7730aef25"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"65cee765bd9cf4128dc2966ba85a6fe6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/de6da069-1145-425b-a992-aaa7730aef25"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"65cee765bd9cf4128dc2966ba85a6fe6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/de6da069-1145-425b-a992-aaa7730aef25"},"level":"info","message":"Attempting to update booking for experiment","requestID":"65cee765bd9cf4128dc2966ba85a6fe6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/de6da069-1145-425b-a992-aaa7730aef25"},"level":"info","message":"Successfully updated booking for experiment","requestID":"65cee765bd9cf4128dc2966ba85a6fe6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/de6da069-1145-425b-a992-aaa7730aef25"},"level":"info","message":"Successfully set up experiment","requestID":"65cee765bd9cf4128dc2966ba85a6fe6"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8b093b70-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8b098990-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":421,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:18Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8b09fec0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":421,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.548236,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:18Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":422,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a132f603-5e33-439a-a840-d3f32cf1608f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8b093b70-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/a132f603-5e33-439a-a840-d3f32cf1608f","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377898,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5OH0.D_aKZAZJPgNqV2dRt7z6jTuy4jJcir62mETu8eGepT8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8b093b70-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":422,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.943907,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:18Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/de6da069-1145-425b-a992-aaa7730aef25"},"level":"info","message":"Successfully running experiment","requestID":"65cee765bd9cf4128dc2966ba85a6fe6"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/056fadf3-1d38-42af-a426-61d4481893d8","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8b098990-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/056fadf3-1d38-42af-a426-61d4481893d8","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377898,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5OH0.D_aKZAZJPgNqV2dRt7z6jTuy4jJcir62mETu8eGepT8"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"8b098990-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":423,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:18Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa132f603-5e33-439a-a840-d3f32cf1608f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bbbdf9c2-e5a1-41c3-8e34-9442c590900e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377898.6771836} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F056fadf3-1d38-42af-a426-61d4481893d8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F056fadf3-1d38-42af-a426-61d4481893d8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:16.386712711Z"}]},"request_id":"109caf70-0a2f-47da-aae9-259001a37fe9","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377898.6794357} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":423,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.82782,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a132f603-5e33-439a-a840-d3f32cf1608f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8b09fec0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a132f603-5e33-439a-a840-d3f32cf1608f","object_type":"device","rebac_allow":false,"scope_allow":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":"8b09fec0-6a0a-11ef-9b41-2363e6623fc8","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"8b098990-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa132f603-5e33-439a-a840-d3f32cf1608f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa132f603-5e33-439a-a840-d3f32cf1608f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:16.338233258Z"}]},"request_id":"feb46e22-677f-4d11-90fe-da893adae9de","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377898.6809456} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8b093b70-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8b09fec0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/a132f603-5e33-439a-a840-d3f32cf1608f/signaling 200 23ms","method":"POST","requestID":"8b09fec0-6a0a-11ef-9b41-2363e6623fc8","responseTime":23,"status":200,"url":"/devices/a132f603-5e33-439a-a840-d3f32cf1608f/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8b098990-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/056fadf3-1d38-42af-a426-61d4481893d8? 200 27ms","method":"GET","requestID":"8b098990-6a0a-11ef-9b41-2363e6623fc8","responseTime":27,"status":200,"url":"/devices/056fadf3-1d38-42af-a426-61d4481893d8?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8b093b70-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/a132f603-5e33-439a-a840-d3f32cf1608f? 200 30ms","method":"GET","requestID":"8b093b70-6a0a-11ef-9b41-2363e6623fc8","responseTime":30,"status":200,"url":"/devices/a132f603-5e33-439a-a840-d3f32cf1608f?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8b0df660-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"56ae3b27-e1d9-4997-9b59-18a51eb28fb8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377898.6940963} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fde6da069-1145-425b-a992-aaa7730aef25#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fde6da069-1145-425b-a992-aaa7730aef25","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"fd49a326-5588-4a32-912a-d1e7d9845ef4","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377898.6944766} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8b0e4480-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"65cee765bd9cf4128dc2966ba85a6fe6","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":424,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:18Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":425,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:18Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F056fadf3-1d38-42af-a426-61d4481893d8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a64a9bbd-81ee-43b9-a053-0676e13c9bb1","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377898.7005973} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":424,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.834202,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/056fadf3-1d38-42af-a426-61d4481893d8","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8b0df660-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/056fadf3-1d38-42af-a426-61d4481893d8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"8b0df660-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa132f603-5e33-439a-a840-d3f32cf1608f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1d5887c0-c925-4877-86df-b276d3852016","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377898.7029226} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":425,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.258638,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a132f603-5e33-439a-a840-d3f32cf1608f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8b0e4480-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a132f603-5e33-439a-a840-d3f32cf1608f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8b0e4480-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8b0df660-6a0a-11ef-9b41-2363e6623fc8"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/de6da069-1145-425b-a992-aaa7730aef25","user":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"65cee765bd9cf4128dc2966ba85a6fe6"} device-1 | {"level":"info","message":"POST /devices/056fadf3-1d38-42af-a426-61d4481893d8/signaling 200 14ms","method":"POST","requestID":"8b0df660-6a0a-11ef-9b41-2363e6623fc8","responseTime":14,"status":200,"url":"/devices/056fadf3-1d38-42af-a426-61d4481893d8/signaling"} gateway-1 | {"time_local":"03/Sep/2024:15:38:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1291","request_time":"0.178","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"65cee765bd9cf4128dc2966ba85a6fe6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8b0e4480-6a0a-11ef-9b41-2363e6623fc8"} experiment-1 | {"level":"info","message":"POST /experiments? 201 170ms","method":"POST","requestID":"65cee765bd9cf4128dc2966ba85a6fe6","responseTime":170,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"POST /devices/a132f603-5e33-439a-a840-d3f32cf1608f/signaling 200 13ms","method":"POST","requestID":"8b0e4480-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/devices/a132f603-5e33-439a-a840-d3f32cf1608f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8b10dc90-6a0a-11ef-9b41-2363e6623fc8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5OH0.D_aKZAZJPgNqV2dRt7z6jTuy4jJcir62mETu8eGepT8","level":"info","message":"auth send jwt","requestID":"732ec6473e505fac52331c6c1386fec4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"732ec6473e505fac52331c6c1386fec4","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"732ec6473e505fac52331c6c1386fec4"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":426,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:18Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":427,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:18Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":427,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.712025,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a132f603-5e33-439a-a840-d3f32cf1608f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"732ec6473e505fac52331c6c1386fec4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/a132f603-5e33-439a-a840-d3f32cf1608f","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377898,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5OH0.D_aKZAZJPgNqV2dRt7z6jTuy4jJcir62mETu8eGepT8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"732ec6473e505fac52331c6c1386fec4","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F056fadf3-1d38-42af-a426-61d4481893d8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"10081973-b6af-426c-a284-61cca31e37b2","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377898.7186763} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":426,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.001146,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/056fadf3-1d38-42af-a426-61d4481893d8","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8b10dc90-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/056fadf3-1d38-42af-a426-61d4481893d8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"8b10dc90-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa132f603-5e33-439a-a840-d3f32cf1608f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa132f603-5e33-439a-a840-d3f32cf1608f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:16.338233258Z"}]},"request_id":"822c8fef-b310-4a99-80f8-7bdd5651580b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377898.7249506} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"732ec6473e505fac52331c6c1386fec4","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8b10dc90-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/056fadf3-1d38-42af-a426-61d4481893d8/signaling 200 14ms","method":"POST","requestID":"8b10dc90-6a0a-11ef-9b41-2363e6623fc8","responseTime":14,"status":200,"url":"/devices/056fadf3-1d38-42af-a426-61d4481893d8/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/de6da069-1145-425b-a992-aaa7730aef25"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"65cee765bd9cf4128dc2966ba85a6fe6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/de6da069-1145-425b-a992-aaa7730aef25"},"level":"info","message":"Building connection plan","requestID":"65cee765bd9cf4128dc2966ba85a6fe6"} 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":"a7777c7b-44b0-4e2f-841d-10a623e442c9"},{"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":"3a783394-ee51-449d-bbc6-ac1f7b984f1b"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"57734e5e-afe5-4548-ada9-6dcc2df03e1e"}]},"level":"info","message":"Built pairwise service configurations","requestID":"65cee765bd9cf4128dc2966ba85a6fe6"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"732ec6473e505fac52331c6c1386fec4"} 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/a132f603-5e33-439a-a840-d3f32cf1608f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/056fadf3-1d38-42af-a426-61d4481893d8"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"65cee765bd9cf4128dc2966ba85a6fe6"} gateway-1 | {"time_local":"03/Sep/2024:15:38:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a132f603-5e33-439a-a840-d3f32cf1608f? 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":"732ec6473e505fac52331c6c1386fec4"} device-1 | {"level":"info","message":"GET /devices/a132f603-5e33-439a-a840-d3f32cf1608f? 200 14ms","method":"GET","requestID":"732ec6473e505fac52331c6c1386fec4","responseTime":14,"status":200,"url":"/devices/a132f603-5e33-439a-a840-d3f32cf1608f?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"8b1374a0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":428,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:18Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5OH0.D_aKZAZJPgNqV2dRt7z6jTuy4jJcir62mETu8eGepT8","level":"info","message":"auth send jwt","requestID":"e5c115bb5aacfaf0e86cb99e6b20284b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e5c115bb5aacfaf0e86cb99e6b20284b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e5c115bb5aacfaf0e86cb99e6b20284b"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":428,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.874511,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:18Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8b1374a0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377898,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5OH0.D_aKZAZJPgNqV2dRt7z6jTuy4jJcir62mETu8eGepT8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8b1374a0-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":429,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:18Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":429,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.987281,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/056fadf3-1d38-42af-a426-61d4481893d8","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"e5c115bb5aacfaf0e86cb99e6b20284b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/056fadf3-1d38-42af-a426-61d4481893d8","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377898,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzg5OH0.D_aKZAZJPgNqV2dRt7z6jTuy4jJcir62mETu8eGepT8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e5c115bb5aacfaf0e86cb99e6b20284b","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F056fadf3-1d38-42af-a426-61d4481893d8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F056fadf3-1d38-42af-a426-61d4481893d8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:16.386712711Z"}]},"request_id":"9c51a819-8ed0-4c65-81b7-52c7bd30f2de","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377898.7447278} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e5c115bb5aacfaf0e86cb99e6b20284b","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","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%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"ef63c7c2-135f-4551-aade-4981a2f345ea","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377898.747803} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e5c115bb5aacfaf0e86cb99e6b20284b"} gateway-1 | {"time_local":"03/Sep/2024:15:38:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/056fadf3-1d38-42af-a426-61d4481893d8? 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":"e5c115bb5aacfaf0e86cb99e6b20284b"} device-1 | {"level":"info","message":"GET /devices/056fadf3-1d38-42af-a426-61d4481893d8? 200 12ms","method":"GET","requestID":"e5c115bb5aacfaf0e86cb99e6b20284b","responseTime":12,"status":200,"url":"/devices/056fadf3-1d38-42af-a426-61d4481893d8?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7831ace4-413e-462b-9f82-79357e0fda70","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377898.7481575} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"8b1374a0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"8b1374a0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"8b1374a0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/3446157e-c579-40d3-a021-ccf86dcf4698'","requestID":"8b1374a0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/3446157e-c579-40d3-a021-ccf86dcf4698'","requestID":"8b1374a0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"8b1374a0-6a0a-11ef-9b41-2363e6623fc8"} 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":"8b1374a0-6a0a-11ef-9b41-2363e6623fc8","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":"8b1374a0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/3446157e-c579-40d3-a021-ccf86dcf4698","device":"a132f603-5e33-439a-a840-d3f32cf1608f","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/de6da069-1145-425b-a992-aaa7730aef25"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"65cee765bd9cf4128dc2966ba85a6fe6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8b1c7550-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":430,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:18Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa132f603-5e33-439a-a840-d3f32cf1608f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fa90ca47-c912-47b5-9185-78adbd7b33f2","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377898.7933848} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":430,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.366522,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a132f603-5e33-439a-a840-d3f32cf1608f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8b1c7550-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a132f603-5e33-439a-a840-d3f32cf1608f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8b1c7550-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8b1c7550-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/a132f603-5e33-439a-a840-d3f32cf1608f/signaling 200 8ms","method":"POST","requestID":"8b1c7550-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/devices/a132f603-5e33-439a-a840-d3f32cf1608f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8b1e2300-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"device":"a132f603-5e33-439a-a840-d3f32cf1608f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"a132f603-5e33-439a-a840-d3f32cf1608f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":431,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:18Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F056fadf3-1d38-42af-a426-61d4481893d8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fbef5b42-20b1-4dcc-ac36-cac3de41d984","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377898.8045769} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":431,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.490662,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/056fadf3-1d38-42af-a426-61d4481893d8","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8b1e2300-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/056fadf3-1d38-42af-a426-61d4481893d8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8b1e2300-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8b1e2300-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/056fadf3-1d38-42af-a426-61d4481893d8/signaling 200 9ms","method":"POST","requestID":"8b1e2300-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/devices/056fadf3-1d38-42af-a426-61d4481893d8/signaling"} device-1 | {"device":"056fadf3-1d38-42af-a426-61d4481893d8","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":"3446157e-c579-40d3-a021-ccf86dcf4698","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 7387766778294900764 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:wv3j\r\na=ice-pwd:0d+Li3BINoyfxQK40DxXbt90\r\na=ice-options:trickle\r\na=fingerprint:sha-256 4C:97:86:3C:3A:BA:B0:38:D4:4C:4B:DF:ED:F3:92:22:57:6E:2D:62:B2:C3:09:9A:69:BC:DF:4A:E9:1F:1C:C2\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"a132f603-5e33-439a-a840-d3f32cf1608f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:1157904951 1 udp 2113937151 9057cdf0-f0de-4e8c-a82c-3a9c32cdff07.local 48337 typ host generation 0 ufrag wv3j network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a132f603-5e33-439a-a840-d3f32cf1608f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"a132f603-5e33-439a-a840-d3f32cf1608f","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/3446157e-c579-40d3-a021-ccf86dcf4698' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3446157e-c579-40d3-a021-ccf86dcf4698","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"candidate":"candidate:3593444132 1 udp 1677729535 141.24.211.56 48337 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag wv3j network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a132f603-5e33-439a-a840-d3f32cf1608f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"777b523fc250918e5dfd39f372f9bf49","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"a132f603-5e33-439a-a840-d3f32cf1608f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"777b523fc250918e5dfd39f372f9bf49","responseTime":2,"status":200,"url":"/auth"} device-1 | {"device":"056fadf3-1d38-42af-a426-61d4481893d8","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":"056fadf3-1d38-42af-a426-61d4481893d8","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":"056fadf3-1d38-42af-a426-61d4481893d8","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 | {"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/a132f603-5e33-439a-a840-d3f32cf1608f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/056fadf3-1d38-42af-a426-61d4481893d8"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/3446157e-c579-40d3-a021-ccf86dcf4698"}}},"level":"info","message":"received a callback","requestID":"777b523fc250918e5dfd39f372f9bf49"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/a132f603-5e33-439a-a840-d3f32cf1608f'"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"777b523fc250918e5dfd39f372f9bf49","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"777b523fc250918e5dfd39f372f9bf49"} device-1 | {"data":{"peerconnection":"3446157e-c579-40d3-a021-ccf86dcf4698","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"056fadf3-1d38-42af-a426-61d4481893d8","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":"a132f603-5e33-439a-a840-d3f32cf1608f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"056fadf3-1d38-42af-a426-61d4481893d8","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":"3446157e-c579-40d3-a021-ccf86dcf4698","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"a132f603-5e33-439a-a840-d3f32cf1608f","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/3446157e-c579-40d3-a021-ccf86dcf4698' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3446157e-c579-40d3-a021-ccf86dcf4698","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7b19a880be6e228c3847fbbca1daedca","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"7b19a880be6e228c3847fbbca1daedca","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/a132f603-5e33-439a-a840-d3f32cf1608f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/056fadf3-1d38-42af-a426-61d4481893d8"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/3446157e-c579-40d3-a021-ccf86dcf4698"}}},"level":"info","message":"received a callback","requestID":"7b19a880be6e228c3847fbbca1daedca"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"8c671dc0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":432,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:20Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3446157e-c579-40d3-a021-ccf86dcf4698","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d6111afd-f513-40c0-bacc-392b7e122b6c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377900.9631793} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":432,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.654179,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/3446157e-c579-40d3-a021-ccf86dcf4698","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8c671dc0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/3446157e-c579-40d3-a021-ccf86dcf4698","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":"8c671dc0-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"8c671dc0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /peerconnections/3446157e-c579-40d3-a021-ccf86dcf4698 200 13ms","method":"GET","requestID":"8c671dc0-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/peerconnections/3446157e-c579-40d3-a021-ccf86dcf4698"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 45ms","method":"POST","requestID":"7b19a880be6e228c3847fbbca1daedca","responseTime":45,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch","requestID":"7b19a880be6e228c3847fbbca1daedca"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8c6cc310-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":433,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:20Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa132f603-5e33-439a-a840-d3f32cf1608f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2d44e469-f370-4f53-825a-47a87c941716","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377901.0015457} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":433,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":6.643097,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a132f603-5e33-439a-a840-d3f32cf1608f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8c6cc310-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a132f603-5e33-439a-a840-d3f32cf1608f","object_type":"device","rebac_allow":false,"scope_allow":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":"8c6cc310-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8c6cc310-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/a132f603-5e33-439a-a840-d3f32cf1608f/signaling 200 17ms","method":"POST","requestID":"8c6cc310-6a0a-11ef-9b41-2363e6623fc8","responseTime":17,"status":200,"url":"/devices/a132f603-5e33-439a-a840-d3f32cf1608f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8c6ff760-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":434,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:21Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F056fadf3-1d38-42af-a426-61d4481893d8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dcae1a89-26c6-4912-9af4-fa78572e5b1b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377901.0214438} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":434,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.872886,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/056fadf3-1d38-42af-a426-61d4481893d8","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8c6ff760-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/056fadf3-1d38-42af-a426-61d4481893d8","object_type":"device","rebac_allow":false,"scope_allow":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":"8c6ff760-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8c6ff760-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/056fadf3-1d38-42af-a426-61d4481893d8/signaling 200 14ms","method":"POST","requestID":"8c6ff760-6a0a-11ef-9b41-2363e6623fc8","responseTime":14,"status":200,"url":"/devices/056fadf3-1d38-42af-a426-61d4481893d8/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwMX0.hlFBPIIzfRIlhBtfwa39nAW03SmuwDuS6QJrncM1XOI","level":"info","message":"auth send jwt","requestID":"172bf463114ae7fcb73c009eb5e21de4"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"172bf463114ae7fcb73c009eb5e21de4","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/de6da069-1145-425b-a992-aaa7730aef25","requestID":"172bf463114ae7fcb73c009eb5e21de4"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":435,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:21Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":435,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.108392,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/de6da069-1145-425b-a992-aaa7730aef25","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"172bf463114ae7fcb73c009eb5e21de4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/de6da069-1145-425b-a992-aaa7730aef25","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377901,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwMX0.hlFBPIIzfRIlhBtfwa39nAW03SmuwDuS6QJrncM1XOI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"172bf463114ae7fcb73c009eb5e21de4","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/de6da069-1145-425b-a992-aaa7730aef25","requestID":"172bf463114ae7fcb73c009eb5e21de4"} gateway-1 | {"time_local":"03/Sep/2024:15:38:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/de6da069-1145-425b-a992-aaa7730aef25 HTTP/1.1","status": "200","body_bytes_sent":"1364","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"172bf463114ae7fcb73c009eb5e21de4"} experiment-1 | {"level":"info","message":"GET /experiments/de6da069-1145-425b-a992-aaa7730aef25 200 16ms","method":"GET","requestID":"172bf463114ae7fcb73c009eb5e21de4","responseTime":16,"status":200,"url":"/experiments/de6da069-1145-425b-a992-aaa7730aef25"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwMX0.hlFBPIIzfRIlhBtfwa39nAW03SmuwDuS6QJrncM1XOI","level":"info","message":"auth send jwt","requestID":"a01946d6766470a6479a6b3cf05474c2"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a01946d6766470a6479a6b3cf05474c2","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/de6da069-1145-425b-a992-aaa7730aef25","requestID":"a01946d6766470a6479a6b3cf05474c2"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":436,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:21Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":436,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.176944,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:21Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/de6da069-1145-425b-a992-aaa7730aef25","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a01946d6766470a6479a6b3cf05474c2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/de6da069-1145-425b-a992-aaa7730aef25","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377901,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwMX0.hlFBPIIzfRIlhBtfwa39nAW03SmuwDuS6QJrncM1XOI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a01946d6766470a6479a6b3cf05474c2","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/de6da069-1145-425b-a992-aaa7730aef25"},"level":"info","message":"Attempting to finish experiment","requestID":"a01946d6766470a6479a6b3cf05474c2"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"8c7b6910-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":437,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:21Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":437,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.316028,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:21Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/3446157e-c579-40d3-a021-ccf86dcf4698","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8c7b6910-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:http://localhost/peerconnections/3446157e-c579-40d3-a021-ccf86dcf4698","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377901,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwMX0.hlFBPIIzfRIlhBtfwa39nAW03SmuwDuS6QJrncM1XOI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8c7b6910-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/3446157e-c579-40d3-a021-ccf86dcf4698","device":"a132f603-5e33-439a-a840-d3f32cf1608f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"056fadf3-1d38-42af-a426-61d4481893d8","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":"056fadf3-1d38-42af-a426-61d4481893d8","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":"056fadf3-1d38-42af-a426-61d4481893d8","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/3446157e-c579-40d3-a021-ccf86dcf4698' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/3446157e-c579-40d3-a021-ccf86dcf4698' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3446157e-c579-40d3-a021-ccf86dcf4698","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3446157e-c579-40d3-a021-ccf86dcf4698': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3446157e-c579-40d3-a021-ccf86dcf4698","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"5a61b8f5-2843-4137-a3be-e276185743ea","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377901.118936} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f05db14f-41c8-4d19-b2f4-e3101f7eaa04","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377901.1197472} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a6aff0e55dc851ed02f6d08de891b273","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"8c7b6910-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a6aff0e55dc851ed02f6d08de891b273","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3d5ca40ee2c391fdb4e986cc1f7a2a4f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/a132f603-5e33-439a-a840-d3f32cf1608f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/056fadf3-1d38-42af-a426-61d4481893d8"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/3446157e-c579-40d3-a021-ccf86dcf4698"}}},"level":"info","message":"received a callback","requestID":"a6aff0e55dc851ed02f6d08de891b273"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3d5ca40ee2c391fdb4e986cc1f7a2a4f","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/a132f603-5e33-439a-a840-d3f32cf1608f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/056fadf3-1d38-42af-a426-61d4481893d8"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/3446157e-c579-40d3-a021-ccf86dcf4698"}}},"level":"info","message":"received a callback","requestID":"3d5ca40ee2c391fdb4e986cc1f7a2a4f"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"8c7b6910-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"DELETE /peerconnections/3446157e-c579-40d3-a021-ccf86dcf4698 204 46ms","method":"DELETE","requestID":"8c7b6910-6a0a-11ef-9b41-2363e6623fc8","responseTime":46,"status":204,"url":"/peerconnections/3446157e-c579-40d3-a021-ccf86dcf4698"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/a132f603-5e33-439a-a840-d3f32cf1608f'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/de6da069-1145-425b-a992-aaa7730aef25"},"level":"info","message":"Successfully finished experiment","requestID":"a01946d6766470a6479a6b3cf05474c2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8c866590-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":438,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:21Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa132f603-5e33-439a-a840-d3f32cf1608f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cc9e966f-8348-4afa-bf64-962696b8d26b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377901.1670067} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":438,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.816482,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a132f603-5e33-439a-a840-d3f32cf1608f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8c866590-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a132f603-5e33-439a-a840-d3f32cf1608f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8c866590-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8c866590-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/a132f603-5e33-439a-a840-d3f32cf1608f/signaling 200 12ms","method":"POST","requestID":"8c866590-6a0a-11ef-9b41-2363e6623fc8","responseTime":12,"status":200,"url":"/devices/a132f603-5e33-439a-a840-d3f32cf1608f/signaling"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fde6da069-1145-425b-a992-aaa7730aef25': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fde6da069-1145-425b-a992-aaa7730aef25","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"ec78ca1d-2638-4ac2-8058-87ed0d542cdf","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377901.1745756} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f36945a2-cf71-41e0-b7f5-d482b8d962cd","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377901.1750264} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"a01946d6766470a6479a6b3cf05474c2","responseTime":16,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8c88af80-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":439,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:21Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F056fadf3-1d38-42af-a426-61d4481893d8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ee8735df-c231-41df-99e7-7694f5e8124b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377901.1835804} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":439,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.842922,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/056fadf3-1d38-42af-a426-61d4481893d8","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8c88af80-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/056fadf3-1d38-42af-a426-61d4481893d8","object_type":"device","rebac_allow":false,"scope_allow":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":"8c88af80-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8c88af80-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/056fadf3-1d38-42af-a426-61d4481893d8/signaling 200 15ms","method":"POST","requestID":"8c88af80-6a0a-11ef-9b41-2363e6623fc8","responseTime":15,"status":200,"url":"/devices/056fadf3-1d38-42af-a426-61d4481893d8/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/de6da069-1145-425b-a992-aaa7730aef25","requestID":"a01946d6766470a6479a6b3cf05474c2"} gateway-1 | {"time_local":"03/Sep/2024:15:38:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/de6da069-1145-425b-a992-aaa7730aef25 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.173","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a01946d6766470a6479a6b3cf05474c2"} gateway-1 | {"time_local":"03/Sep/2024:15:38:21 +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.333","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"88ff78940c5b187dc8a0faaca98a700f"} experiment-1 | {"level":"info","message":"DELETE /experiments/de6da069-1145-425b-a992-aaa7730aef25 204 168ms","method":"DELETE","requestID":"a01946d6766470a6479a6b3cf05474c2","responseTime":168,"status":204,"url":"/experiments/de6da069-1145-425b-a992-aaa7730aef25"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 121ms","method":"POST","requestID":"a6aff0e55dc851ed02f6d08de891b273","responseTime":121,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.124","http_referrer":"","http_user_agent":"node-fetch","requestID":"a6aff0e55dc851ed02f6d08de891b273"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 120ms","method":"POST","requestID":"3d5ca40ee2c391fdb4e986cc1f7a2a4f","responseTime":120,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.125","http_referrer":"","http_user_agent":"node-fetch","requestID":"3d5ca40ee2c391fdb4e986cc1f7a2a4f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwMX0.hlFBPIIzfRIlhBtfwa39nAW03SmuwDuS6QJrncM1XOI","level":"info","message":"auth send jwt","requestID":"97fc2846ccd7c154c19e5775569c5ce0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"97fc2846ccd7c154c19e5775569c5ce0","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"97fc2846ccd7c154c19e5775569c5ce0"} gateway-1 | {"time_local":"03/Sep/2024:15:38:21 +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.794","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c78f707e939e5237930d05da21e13483"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":440,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:21Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":440,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.968027,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:21Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"97fc2846ccd7c154c19e5775569c5ce0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377901,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwMX0.hlFBPIIzfRIlhBtfwa39nAW03SmuwDuS6QJrncM1XOI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"97fc2846ccd7c154c19e5775569c5ce0","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/056fadf3-1d38-42af-a426-61d4481893d8' 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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fad1b6b49-20de-4ea4-9bd6-43e738e6e65b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"422afe87-2881-451f-aa86-ec146dbd01c6","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377901.2700388} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"97fc2846ccd7c154c19e5775569c5ce0","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/a132f603-5e33-439a-a840-d3f32cf1608f' 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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4b84d5c8-91dd-4ba8-8928-4f39f3838a9c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377901.276132} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"97fc2846ccd7c154c19e5775569c5ce0","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fad1b6b49-20de-4ea4-9bd6-43e738e6e65b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"9fcdc83e-eca8-4189-91fe-c7f0e490f551","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377901.2852387} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e2f0daea-501f-4975-8894-1d3b99663ccb","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377901.2854037} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"97fc2846ccd7c154c19e5775569c5ce0","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fad1b6b49-20de-4ea4-9bd6-43e738e6e65b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fad1b6b49-20de-4ea4-9bd6-43e738e6e65b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:21.285209439Z"}]},"request_id":"c0aea253-ec85-4af2-99c8-e5bd4309b5c5","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377901.2897847} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"97fc2846ccd7c154c19e5775569c5ce0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"97fc2846ccd7c154c19e5775569c5ce0"} gateway-1 | {"time_local":"03/Sep/2024:15:38:21 +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":"97fc2846ccd7c154c19e5775569c5ce0"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"97fc2846ccd7c154c19e5775569c5ce0","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwMX0.hlFBPIIzfRIlhBtfwa39nAW03SmuwDuS6QJrncM1XOI","level":"info","message":"auth send jwt","requestID":"4ac672dc84b63c54cadaa3dfbc7d07af"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4ac672dc84b63c54cadaa3dfbc7d07af","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"4ac672dc84b63c54cadaa3dfbc7d07af"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":441,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:21Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":441,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.688098,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:21Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"4ac672dc84b63c54cadaa3dfbc7d07af","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377901,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwMX0.hlFBPIIzfRIlhBtfwa39nAW03SmuwDuS6QJrncM1XOI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4ac672dc84b63c54cadaa3dfbc7d07af","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"76bc2273-c102-46d4-bd16-481acf292212","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377901.3168907} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"4ac672dc84b63c54cadaa3dfbc7d07af","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"374b6059-0eb6-412e-a1c0-2119ac66814d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377901.3214638} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"4ac672dc84b63c54cadaa3dfbc7d07af","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"9ff2cd21-3f51-4ecf-be06-fd0098417a57","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377901.3329582} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6cc0c6c7-9d0e-44ff-b1af-5710105c7645","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377901.3330715} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"4ac672dc84b63c54cadaa3dfbc7d07af","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:21.332937820Z"}]},"request_id":"ec2daa52-438d-4283-84f7-2430ac169940","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377901.3369043} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"4ac672dc84b63c54cadaa3dfbc7d07af","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4ac672dc84b63c54cadaa3dfbc7d07af"} gateway-1 | {"time_local":"03/Sep/2024:15:38: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.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4ac672dc84b63c54cadaa3dfbc7d07af"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"4ac672dc84b63c54cadaa3dfbc7d07af","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwMX0.hlFBPIIzfRIlhBtfwa39nAW03SmuwDuS6QJrncM1XOI","level":"info","message":"auth send jwt","requestID":"a3be8769434974a4c09484330576f941"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a3be8769434974a4c09484330576f941","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"a3be8769434974a4c09484330576f941"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":442,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:21Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":442,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.367942,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:21Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a3be8769434974a4c09484330576f941","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377901,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwMX0.hlFBPIIzfRIlhBtfwa39nAW03SmuwDuS6QJrncM1XOI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a3be8769434974a4c09484330576f941","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fad1b6b49-20de-4ea4-9bd6-43e738e6e65b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fad1b6b49-20de-4ea4-9bd6-43e738e6e65b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:21.285209439Z"}]},"request_id":"f8bbb5b4-458a-4418-aa98-af772f6d6650","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377901.8056245} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a3be8769434974a4c09484330576f941","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7d39e755-3d70-422e-87a8-712bbddf91cc","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377901.8141818} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"a3be8769434974a4c09484330576f941","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fad1b6b49-20de-4ea4-9bd6-43e738e6e65b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fad1b6b49-20de-4ea4-9bd6-43e738e6e65b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:21.285209439Z"}]},"request_id":"5f163078-14d8-4503-932e-6f47a95c1393","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377901.827415} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a3be8769434974a4c09484330576f941","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"a3be8769434974a4c09484330576f941"} gateway-1 | {"time_local":"03/Sep/2024:15:38:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.046","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"a3be8769434974a4c09484330576f941"} device-1 | {"level":"info","message":"PATCH /devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b 200 38ms","method":"PATCH","requestID":"a3be8769434974a4c09484330576f941","responseTime":38,"status":200,"url":"/devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwMX0.hlFBPIIzfRIlhBtfwa39nAW03SmuwDuS6QJrncM1XOI","level":"info","message":"auth send jwt","requestID":"184641d702fa8cbb33f69eeb8acbe573"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"184641d702fa8cbb33f69eeb8acbe573","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"184641d702fa8cbb33f69eeb8acbe573"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":443,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:21Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":443,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.874122,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:21Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"184641d702fa8cbb33f69eeb8acbe573","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377901,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwMX0.hlFBPIIzfRIlhBtfwa39nAW03SmuwDuS6QJrncM1XOI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"184641d702fa8cbb33f69eeb8acbe573","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"184641d702fa8cbb33f69eeb8acbe573"} device-1 | {"level":"info","message":"POST /devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b/websocket 200 21ms","method":"POST","requestID":"184641d702fa8cbb33f69eeb8acbe573","responseTime":21,"status":200,"url":"/devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b/websocket"} gateway-1 | {"time_local":"03/Sep/2024:15:38:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"184641d702fa8cbb33f69eeb8acbe573"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3a6fae656ab5c17c63228016e5344717","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3a6fae656ab5c17c63228016e5344717","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"03/Sep/2024:15:38:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a/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":"3a6fae656ab5c17c63228016e5344717"} device-1 | {"level":"info","message":"OPTIONS /devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a/websocket 200 1ms","method":"OPTIONS","requestID":"3a6fae656ab5c17c63228016e5344717","responseTime":1,"status":200,"url":"/devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwM30.g1badkORspII4Ufb6J-xw19NWQqionoS2ttiBMA3Rns","level":"info","message":"auth send jwt","requestID":"5ee490aa4fa86adedcd7cf6654c477f4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5ee490aa4fa86adedcd7cf6654c477f4","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"5ee490aa4fa86adedcd7cf6654c477f4"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":444,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:23Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":444,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.262554,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:23Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"5ee490aa4fa86adedcd7cf6654c477f4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377903,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwM30.g1badkORspII4Ufb6J-xw19NWQqionoS2ttiBMA3Rns"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5ee490aa4fa86adedcd7cf6654c477f4","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"5ee490aa4fa86adedcd7cf6654c477f4"} gateway-1 | {"time_local":"03/Sep/2024:15:38:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"5ee490aa4fa86adedcd7cf6654c477f4"} device-1 | {"level":"info","message":"POST /devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a/websocket 200 18ms","method":"POST","requestID":"5ee490aa4fa86adedcd7cf6654c477f4","responseTime":18,"status":200,"url":"/devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwM30.g1badkORspII4Ufb6J-xw19NWQqionoS2ttiBMA3Rns","level":"info","message":"auth send jwt","requestID":"7de1d07b7d52818cd5537294daeecf92"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7de1d07b7d52818cd5537294daeecf92","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7de1d07b7d52818cd5537294daeecf92"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":445,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:23Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":445,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.160554,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7de1d07b7d52818cd5537294daeecf92","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377903,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwM30.g1badkORspII4Ufb6J-xw19NWQqionoS2ttiBMA3Rns"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7de1d07b7d52818cd5537294daeecf92","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fad1b6b49-20de-4ea4-9bd6-43e738e6e65b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fad1b6b49-20de-4ea4-9bd6-43e738e6e65b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:21.285209439Z"}]},"request_id":"3f52851b-bb0c-4f56-9fae-25c4fd57076e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377903.4275763} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7de1d07b7d52818cd5537294daeecf92","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7de1d07b7d52818cd5537294daeecf92"} gateway-1 | {"time_local":"03/Sep/2024:15:38:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b? 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":"7de1d07b7d52818cd5537294daeecf92"} device-1 | {"level":"info","message":"GET /devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b? 200 19ms","method":"GET","requestID":"7de1d07b7d52818cd5537294daeecf92","responseTime":19,"status":200,"url":"/devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwM30.g1badkORspII4Ufb6J-xw19NWQqionoS2ttiBMA3Rns","level":"info","message":"auth send jwt","requestID":"07f725867066be06b511a38a80a9be1b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"07f725867066be06b511a38a80a9be1b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"07f725867066be06b511a38a80a9be1b"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":446,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:23Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":446,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.212989,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"07f725867066be06b511a38a80a9be1b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377903,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwM30.g1badkORspII4Ufb6J-xw19NWQqionoS2ttiBMA3Rns"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"07f725867066be06b511a38a80a9be1b","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:21.332937820Z"}]},"request_id":"b96279ff-0361-4a21-b6b9-a123b56b6cf9","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377903.453274} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"07f725867066be06b511a38a80a9be1b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"07f725867066be06b511a38a80a9be1b"} gateway-1 | {"time_local":"03/Sep/2024:15:38:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a? 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":"07f725867066be06b511a38a80a9be1b"} device-1 | {"level":"info","message":"GET /devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a? 200 18ms","method":"GET","requestID":"07f725867066be06b511a38a80a9be1b","responseTime":18,"status":200,"url":"/devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwM30.g1badkORspII4Ufb6J-xw19NWQqionoS2ttiBMA3Rns","level":"info","message":"auth send jwt","requestID":"51a958dcd63bfa535e32fbd255f69c47"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"51a958dcd63bfa535e32fbd255f69c47","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"51a958dcd63bfa535e32fbd255f69c47"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":447,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:23Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":447,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.281375,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:23Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"51a958dcd63bfa535e32fbd255f69c47","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377903,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwM30.g1badkORspII4Ufb6J-xw19NWQqionoS2ttiBMA3Rns"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"51a958dcd63bfa535e32fbd255f69c47","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/001c7513-10b3-47db-b440-d2bb57005ab3"},"level":"info","message":"Attempting to run experiment","requestID":"51a958dcd63bfa535e32fbd255f69c47"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/001c7513-10b3-47db-b440-d2bb57005ab3"},"level":"info","message":"Attempting to book experiment","requestID":"51a958dcd63bfa535e32fbd255f69c47"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/001c7513-10b3-47db-b440-d2bb57005ab3"},"level":"info","message":"Successfully booked experiment","requestID":"51a958dcd63bfa535e32fbd255f69c47"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8decfa70-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8ded2180-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":448,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:23Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":449,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:23Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":448,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.621069,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8decfa70-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377903,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwM30.g1badkORspII4Ufb6J-xw19NWQqionoS2ttiBMA3Rns"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8decfa70-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":449,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.263729,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8ded2180-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377903,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwM30.g1badkORspII4Ufb6J-xw19NWQqionoS2ttiBMA3Rns"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8ded2180-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fad1b6b49-20de-4ea4-9bd6-43e738e6e65b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fad1b6b49-20de-4ea4-9bd6-43e738e6e65b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:21.285209439Z"}]},"request_id":"4d5aaeb8-4d4a-451a-b7f2-59f28b330e3b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377903.5203228} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8decfa70-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:21.332937820Z"}]},"request_id":"df57c095-61e4-456f-af3e-c75a9a24da50","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377903.521878} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8ded2180-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8decfa70-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b? 200 15ms","method":"GET","requestID":"8decfa70-6a0a-11ef-9b41-2363e6623fc8","responseTime":15,"status":200,"url":"/devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8ded2180-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a? 200 15ms","method":"GET","requestID":"8ded2180-6a0a-11ef-9b41-2363e6623fc8","responseTime":15,"status":200,"url":"/devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/001c7513-10b3-47db-b440-d2bb57005ab3"},"level":"info","message":"Setting up experiment","requestID":"51a958dcd63bfa535e32fbd255f69c47"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/001c7513-10b3-47db-b440-d2bb57005ab3"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"51a958dcd63bfa535e32fbd255f69c47"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/001c7513-10b3-47db-b440-d2bb57005ab3"},"level":"info","message":"Successfully locked booking for experiment","requestID":"51a958dcd63bfa535e32fbd255f69c47"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/001c7513-10b3-47db-b440-d2bb57005ab3"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"51a958dcd63bfa535e32fbd255f69c47"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/001c7513-10b3-47db-b440-d2bb57005ab3"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"51a958dcd63bfa535e32fbd255f69c47"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/001c7513-10b3-47db-b440-d2bb57005ab3"},"level":"info","message":"Attempting to update booking for experiment","requestID":"51a958dcd63bfa535e32fbd255f69c47"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/001c7513-10b3-47db-b440-d2bb57005ab3"},"level":"info","message":"Successfully updated booking for experiment","requestID":"51a958dcd63bfa535e32fbd255f69c47"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/001c7513-10b3-47db-b440-d2bb57005ab3"},"level":"info","message":"Successfully set up experiment","requestID":"51a958dcd63bfa535e32fbd255f69c47"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8df55ee0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8df5ad00-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8df5fb20-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":450,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:23Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":450,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.645703,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:23Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":451,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:23Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/001c7513-10b3-47db-b440-d2bb57005ab3"},"level":"info","message":"Successfully running experiment","requestID":"51a958dcd63bfa535e32fbd255f69c47"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8df55ee0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377903,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwM30.g1badkORspII4Ufb6J-xw19NWQqionoS2ttiBMA3Rns"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8df55ee0-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":451,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.626686,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8df5ad00-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377903,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwM30.g1badkORspII4Ufb6J-xw19NWQqionoS2ttiBMA3Rns"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8df5ad00-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":452,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:23Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":452,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.734891,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:23Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fad1b6b49-20de-4ea4-9bd6-43e738e6e65b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ecf8257b-4a06-40cf-96ea-828ed2513c57","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377903.5761774} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:21.332937820Z"}]},"request_id":"49d07c5d-d774-4c52-b47e-447dff00cd45","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377903.5774295} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8df5fb20-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"8df5fb20-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"8df5ad00-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fad1b6b49-20de-4ea4-9bd6-43e738e6e65b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fad1b6b49-20de-4ea4-9bd6-43e738e6e65b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:21.285209439Z"}]},"request_id":"747ef2ea-c6e7-45eb-ab59-e3f8d1646f27","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377903.5792344} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8df55ee0-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8df5fb20-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b/signaling 200 15ms","method":"POST","requestID":"8df5fb20-6a0a-11ef-9b41-2363e6623fc8","responseTime":15,"status":200,"url":"/devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8df5ad00-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a? 200 18ms","method":"GET","requestID":"8df5ad00-6a0a-11ef-9b41-2363e6623fc8","responseTime":18,"status":200,"url":"/devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8df55ee0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b? 200 20ms","method":"GET","requestID":"8df55ee0-6a0a-11ef-9b41-2363e6623fc8","responseTime":20,"status":200,"url":"/devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8df8ba40-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8df90860-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":453,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:23Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5d6ff136-2ca5-4249-8059-76e87b83c33e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377903.593173} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F001c7513-10b3-47db-b440-d2bb57005ab3#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F001c7513-10b3-47db-b440-d2bb57005ab3","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"31f4104c-bff9-4e89-8439-693670316489","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377903.5933838} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3cbbc47a-1002-414f-bf34-d4618772ce7a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377903.5935807} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":453,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.150499,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:23Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":454,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8df8ba40-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","object_type":"device","rebac_allow":false,"scope_allow":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":"8df8ba40-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"51a958dcd63bfa535e32fbd255f69c47","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fad1b6b49-20de-4ea4-9bd6-43e738e6e65b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ae52a436-c77c-453d-beb5-8f50f9b8fe8f","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377903.5960224} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":454,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.26216,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8df90860-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"8df90860-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8df8ba40-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a/signaling 200 12ms","method":"POST","requestID":"8df8ba40-6a0a-11ef-9b41-2363e6623fc8","responseTime":12,"status":200,"url":"/devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8df90860-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b/signaling 200 13ms","method":"POST","requestID":"8df90860-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8dfb7960-6a0a-11ef-9b41-2363e6623fc8"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/001c7513-10b3-47db-b440-d2bb57005ab3","user":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"51a958dcd63bfa535e32fbd255f69c47"} gateway-1 | {"time_local":"03/Sep/2024:15:38:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1291","request_time":"0.147","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"51a958dcd63bfa535e32fbd255f69c47"} experiment-1 | {"level":"info","message":"POST /experiments? 201 138ms","method":"POST","requestID":"51a958dcd63bfa535e32fbd255f69c47","responseTime":138,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":455,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:23Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"53074981-16ea-4070-bebf-cb2305270184","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377903.6118243} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":455,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.521233,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:23Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwM30.g1badkORspII4Ufb6J-xw19NWQqionoS2ttiBMA3Rns","level":"info","message":"auth send jwt","requestID":"c5b8ba1470130dd2a84f4ca8d88e33f3"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8dfb7960-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c5b8ba1470130dd2a84f4ca8d88e33f3","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8dfb7960-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c5b8ba1470130dd2a84f4ca8d88e33f3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8dfb7960-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":456,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:23Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":456,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.999845,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:23Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/001c7513-10b3-47db-b440-d2bb57005ab3"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"51a958dcd63bfa535e32fbd255f69c47"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/001c7513-10b3-47db-b440-d2bb57005ab3"},"level":"info","message":"Building connection plan","requestID":"51a958dcd63bfa535e32fbd255f69c47"} 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":"46a83298-d6eb-4b36-92d9-bb6f8251990e"},{"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":"f532cc76-b526-4249-b0db-d9f4af621cbe"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"e99eaa53-12b5-4af3-9d32-176ac1e08f53"}]},"level":"info","message":"Built pairwise service configurations","requestID":"51a958dcd63bfa535e32fbd255f69c47"} device-1 | {"level":"info","message":"POST /devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a/signaling 200 13ms","method":"POST","requestID":"8dfb7960-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a/signaling"} 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/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"51a958dcd63bfa535e32fbd255f69c47"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"c5b8ba1470130dd2a84f4ca8d88e33f3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377903,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwM30.g1badkORspII4Ufb6J-xw19NWQqionoS2ttiBMA3Rns"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c5b8ba1470130dd2a84f4ca8d88e33f3","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"8dfe1170-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fad1b6b49-20de-4ea4-9bd6-43e738e6e65b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fad1b6b49-20de-4ea4-9bd6-43e738e6e65b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:21.285209439Z"}]},"request_id":"2e1b81ec-fa7e-4b10-a2de-01e8b2a7d9ee","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377903.624198} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c5b8ba1470130dd2a84f4ca8d88e33f3","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":457,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:23Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":457,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.004263,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:23Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c5b8ba1470130dd2a84f4ca8d88e33f3"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8dfe1170-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377903,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwM30.g1badkORspII4Ufb6J-xw19NWQqionoS2ttiBMA3Rns"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8dfe1170-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"03/Sep/2024:15:38:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b? 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":"c5b8ba1470130dd2a84f4ca8d88e33f3"} device-1 | {"level":"info","message":"GET /devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b? 200 14ms","method":"GET","requestID":"c5b8ba1470130dd2a84f4ca8d88e33f3","responseTime":14,"status":200,"url":"/devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwM30.g1badkORspII4Ufb6J-xw19NWQqionoS2ttiBMA3Rns","level":"info","message":"auth send jwt","requestID":"d0ba3ebc220a8dc0a8f5c8e108f5e0ff"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d0ba3ebc220a8dc0a8f5c8e108f5e0ff","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d0ba3ebc220a8dc0a8f5c8e108f5e0ff"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":458,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:23Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":458,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.652402,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"d0ba3ebc220a8dc0a8f5c8e108f5e0ff","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377903,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwM30.g1badkORspII4Ufb6J-xw19NWQqionoS2ttiBMA3Rns"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d0ba3ebc220a8dc0a8f5c8e108f5e0ff","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","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%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"227a797c-fa71-48d0-a49a-69665f861387","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377903.6413653} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8c3d68a9-1168-429b-bb22-e815617f2a9c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377903.6417274} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:21.332937820Z"}]},"request_id":"7dd3fafe-4c53-46c9-be97-341d427e7244","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377903.6424654} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"8dfe1170-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d0ba3ebc220a8dc0a8f5c8e108f5e0ff","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d0ba3ebc220a8dc0a8f5c8e108f5e0ff"} gateway-1 | {"time_local":"03/Sep/2024:15:38:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a? 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":"d0ba3ebc220a8dc0a8f5c8e108f5e0ff"} device-1 | {"level":"info","message":"GET /devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a? 200 12ms","method":"GET","requestID":"d0ba3ebc220a8dc0a8f5c8e108f5e0ff","responseTime":12,"status":200,"url":"/devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"8dfe1170-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"8dfe1170-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/99d12ed5-07c7-42d3-818f-0ad5feee4a03'","requestID":"8dfe1170-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/99d12ed5-07c7-42d3-818f-0ad5feee4a03'","requestID":"8dfe1170-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"8dfe1170-6a0a-11ef-9b41-2363e6623fc8"} 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":"8dfe1170-6a0a-11ef-9b41-2363e6623fc8","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":"8dfe1170-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/99d12ed5-07c7-42d3-818f-0ad5feee4a03","device":"73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","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/001c7513-10b3-47db-b440-d2bb57005ab3"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"51a958dcd63bfa535e32fbd255f69c47"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8e073930-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":459,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:23Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fad1b6b49-20de-4ea4-9bd6-43e738e6e65b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"22c3b0f9-74cb-48e3-95b9-00fa86e874ae","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377903.688394} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":459,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.115193,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8e073930-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8e073930-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8e073930-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b/signaling 200 10ms","method":"POST","requestID":"8e073930-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8e090df0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":460,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:23Z"} device-1 | {"device":"73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2afcee01-c9ac-41d6-bfa5-e14e48aeab4d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377903.6999037} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":460,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.584481,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8e090df0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8e090df0-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"content":{"sdp":"v=0\r\no=- 8671539297402540180 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:tMEj\r\na=ice-pwd:8VtcCvpk6Elkhd6BKyCU/9+6\r\na=ice-options:trickle\r\na=fingerprint:sha-256 AF:8E:A6:DE:FF:4D:59:D2:21:A5:19:24:08:D0:E6:EA:94:79:F6:8A:BF:5E:16:5B:B7:FE:0D:3D:EE:98:71:67\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8e090df0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a/signaling 200 14ms","method":"POST","requestID":"8e090df0-6a0a-11ef-9b41-2363e6623fc8","responseTime":14,"status":200,"url":"/devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a/signaling"} device-1 | {"device":"73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"ad1b6b49-20de-4ea4-9bd6-43e738e6e65b","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":"99d12ed5-07c7-42d3-818f-0ad5feee4a03","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"ad1b6b49-20de-4ea4-9bd6-43e738e6e65b","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":"ad1b6b49-20de-4ea4-9bd6-43e738e6e65b","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":"ad1b6b49-20de-4ea4-9bd6-43e738e6e65b","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":"ad1b6b49-20de-4ea4-9bd6-43e738e6e65b","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/99d12ed5-07c7-42d3-818f-0ad5feee4a03' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"99d12ed5-07c7-42d3-818f-0ad5feee4a03","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0cf382e4fdbffb3764e299e948ce686f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"0cf382e4fdbffb3764e299e948ce686f","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":"connecting","url":"http://localhost/devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/99d12ed5-07c7-42d3-818f-0ad5feee4a03"}}},"level":"info","message":"received a callback","requestID":"0cf382e4fdbffb3764e299e948ce686f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"0cf382e4fdbffb3764e299e948ce686f","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"0cf382e4fdbffb3764e299e948ce686f"} device-1 | {"content":{"candidate":"candidate:3186583668 1 udp 2113937151 117ad537-1696-46b9-b4ac-4d08e19edd52.local 60644 typ host generation 0 ufrag tMEj network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:784648551 1 udp 1677729535 141.24.211.56 60644 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag tMEj network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2431152789 1 udp 33562623 141.24.210.113 52569 typ relay raddr 141.24.211.56 rport 60644 generation 0 ufrag tMEj network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","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/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a'"} device-1 | {"device":"73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"data":{"peerconnection":"99d12ed5-07c7-42d3-818f-0ad5feee4a03","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"ad1b6b49-20de-4ea4-9bd6-43e738e6e65b","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":"73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"ad1b6b49-20de-4ea4-9bd6-43e738e6e65b","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":"99d12ed5-07c7-42d3-818f-0ad5feee4a03","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/99d12ed5-07c7-42d3-818f-0ad5feee4a03' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"99d12ed5-07c7-42d3-818f-0ad5feee4a03","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9b2bca8e89927aff6850b3ec460f50d6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"9b2bca8e89927aff6850b3ec460f50d6","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/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/99d12ed5-07c7-42d3-818f-0ad5feee4a03"}}},"level":"info","message":"received a callback","requestID":"9b2bca8e89927aff6850b3ec460f50d6"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"8f4e5f30-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":461,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:25Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F99d12ed5-07c7-42d3-818f-0ad5feee4a03","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e22a9924-4767-4d77-b029-ed2e9062814a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377905.833544} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":461,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.464903,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/99d12ed5-07c7-42d3-818f-0ad5feee4a03","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8f4e5f30-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/99d12ed5-07c7-42d3-818f-0ad5feee4a03","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":"8f4e5f30-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"8f4e5f30-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /peerconnections/99d12ed5-07c7-42d3-818f-0ad5feee4a03 200 11ms","method":"GET","requestID":"8f4e5f30-6a0a-11ef-9b41-2363e6623fc8","responseTime":11,"status":200,"url":"/peerconnections/99d12ed5-07c7-42d3-818f-0ad5feee4a03"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 37ms","method":"POST","requestID":"9b2bca8e89927aff6850b3ec460f50d6","responseTime":37,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.042","http_referrer":"","http_user_agent":"node-fetch","requestID":"9b2bca8e89927aff6850b3ec460f50d6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8f52f310-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":462,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:25Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fad1b6b49-20de-4ea4-9bd6-43e738e6e65b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b675162e-5eac-47f4-8af8-1f6cab897c2b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377905.8620644} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":462,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.749538,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8f52f310-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8f52f310-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8f52f310-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b/signaling 200 11ms","method":"POST","requestID":"8f52f310-6a0a-11ef-9b41-2363e6623fc8","responseTime":11,"status":200,"url":"/devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8f5515f0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":463,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:25Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"34b964d8-9b55-461b-b392-8cbe909c3e45","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377905.8765073} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":463,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.640473,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8f5515f0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8f5515f0-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8f5515f0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a/signaling 200 11ms","method":"POST","requestID":"8f5515f0-6a0a-11ef-9b41-2363e6623fc8","responseTime":11,"status":200,"url":"/devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwNX0.elOSC_bIiniGlPDrzbfoP84u65QT3qEbrC2Zu-ZnWGo","level":"info","message":"auth send jwt","requestID":"df5a658dae46284902347b18df090503"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"df5a658dae46284902347b18df090503","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/001c7513-10b3-47db-b440-d2bb57005ab3","requestID":"df5a658dae46284902347b18df090503"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":464,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:25Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":464,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.214895,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/001c7513-10b3-47db-b440-d2bb57005ab3","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"df5a658dae46284902347b18df090503","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/001c7513-10b3-47db-b440-d2bb57005ab3","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377905,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwNX0.elOSC_bIiniGlPDrzbfoP84u65QT3qEbrC2Zu-ZnWGo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"df5a658dae46284902347b18df090503","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/001c7513-10b3-47db-b440-d2bb57005ab3","requestID":"df5a658dae46284902347b18df090503"} gateway-1 | {"time_local":"03/Sep/2024:15:38:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/001c7513-10b3-47db-b440-d2bb57005ab3 HTTP/1.1","status": "200","body_bytes_sent":"1364","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"df5a658dae46284902347b18df090503"} experiment-1 | {"level":"info","message":"GET /experiments/001c7513-10b3-47db-b440-d2bb57005ab3 200 17ms","method":"GET","requestID":"df5a658dae46284902347b18df090503","responseTime":17,"status":200,"url":"/experiments/001c7513-10b3-47db-b440-d2bb57005ab3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwNX0.elOSC_bIiniGlPDrzbfoP84u65QT3qEbrC2Zu-ZnWGo","level":"info","message":"auth send jwt","requestID":"1b75f6907e502907bc69017e7e967a03"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1b75f6907e502907bc69017e7e967a03","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/001c7513-10b3-47db-b440-d2bb57005ab3","requestID":"1b75f6907e502907bc69017e7e967a03"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":465,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:25Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":465,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.407094,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:25Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/001c7513-10b3-47db-b440-d2bb57005ab3","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"1b75f6907e502907bc69017e7e967a03","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/001c7513-10b3-47db-b440-d2bb57005ab3","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377905,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwNX0.elOSC_bIiniGlPDrzbfoP84u65QT3qEbrC2Zu-ZnWGo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1b75f6907e502907bc69017e7e967a03","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/001c7513-10b3-47db-b440-d2bb57005ab3"},"level":"info","message":"Attempting to finish experiment","requestID":"1b75f6907e502907bc69017e7e967a03"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"8f625c60-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":466,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:25Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":466,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.249837,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:25Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/99d12ed5-07c7-42d3-818f-0ad5feee4a03","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8f625c60-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:http://localhost/peerconnections/99d12ed5-07c7-42d3-818f-0ad5feee4a03","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377905,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwNX0.elOSC_bIiniGlPDrzbfoP84u65QT3qEbrC2Zu-ZnWGo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8f625c60-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/99d12ed5-07c7-42d3-818f-0ad5feee4a03","device":"73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"ad1b6b49-20de-4ea4-9bd6-43e738e6e65b","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":"ad1b6b49-20de-4ea4-9bd6-43e738e6e65b","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":"ad1b6b49-20de-4ea4-9bd6-43e738e6e65b","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/99d12ed5-07c7-42d3-818f-0ad5feee4a03' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/99d12ed5-07c7-42d3-818f-0ad5feee4a03' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"99d12ed5-07c7-42d3-818f-0ad5feee4a03","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"00fc78e60d13dde15b5822197e072b50","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"00fc78e60d13dde15b5822197e072b50","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6172630e5664f9e9d54d293920756368","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"closed","url":"http://localhost/devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/99d12ed5-07c7-42d3-818f-0ad5feee4a03"}}},"level":"info","message":"received a callback","requestID":"00fc78e60d13dde15b5822197e072b50"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"6172630e5664f9e9d54d293920756368","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F99d12ed5-07c7-42d3-818f-0ad5feee4a03': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F99d12ed5-07c7-42d3-818f-0ad5feee4a03","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"1cea7be0-7af3-45bd-9a36-a2a34c5c53dc","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377905.9894319} 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/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/99d12ed5-07c7-42d3-818f-0ad5feee4a03"}}},"level":"info","message":"received a callback","requestID":"6172630e5664f9e9d54d293920756368"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"19b3bde7-80e6-4bef-8968-8fb7b7df49d4","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377905.9935951} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"8f625c60-6a0a-11ef-9b41-2363e6623fc8","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"99d12ed5-07c7-42d3-818f-0ad5feee4a03","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"8f625c60-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"DELETE /peerconnections/99d12ed5-07c7-42d3-818f-0ad5feee4a03 204 56ms","method":"DELETE","requestID":"8f625c60-6a0a-11ef-9b41-2363e6623fc8","responseTime":56,"status":204,"url":"/peerconnections/99d12ed5-07c7-42d3-818f-0ad5feee4a03"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/001c7513-10b3-47db-b440-d2bb57005ab3"},"level":"info","message":"Successfully finished experiment","requestID":"1b75f6907e502907bc69017e7e967a03"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8f6edf80-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":467,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:26Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fad1b6b49-20de-4ea4-9bd6-43e738e6e65b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"86a5e75e-2ba0-4249-8633-4755644ce709","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377906.0461054} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":467,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.519191,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8f6edf80-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b","object_type":"device","rebac_allow":false,"scope_allow":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":"8f6edf80-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F001c7513-10b3-47db-b440-d2bb57005ab3': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F001c7513-10b3-47db-b440-d2bb57005ab3","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"327bd2b9-000a-4ed1-9a1c-7efcf18120e2","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377906.0494103} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6660f565-c589-430e-984f-1af7229775f3","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377906.04982} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"1b75f6907e502907bc69017e7e967a03","responseTime":16,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8f6edf80-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b/signaling 200 15ms","method":"POST","requestID":"8f6edf80-6a0a-11ef-9b41-2363e6623fc8","responseTime":15,"status":200,"url":"/devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8f719ea0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":468,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:26Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3c3567cd-bbfa-4711-bf11-a7afbb32a6a2","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377906.064891} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":468,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.72612,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8f719ea0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"8f719ea0-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8f719ea0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a/signaling 200 14ms","method":"POST","requestID":"8f719ea0-6a0a-11ef-9b41-2363e6623fc8","responseTime":14,"status":200,"url":"/devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/001c7513-10b3-47db-b440-d2bb57005ab3","requestID":"1b75f6907e502907bc69017e7e967a03"} gateway-1 | {"time_local":"03/Sep/2024:15:38:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/001c7513-10b3-47db-b440-d2bb57005ab3 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.182","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1b75f6907e502907bc69017e7e967a03"} experiment-1 | {"level":"info","message":"DELETE /experiments/001c7513-10b3-47db-b440-d2bb57005ab3 204 178ms","method":"DELETE","requestID":"1b75f6907e502907bc69017e7e967a03","responseTime":178,"status":204,"url":"/experiments/001c7513-10b3-47db-b440-d2bb57005ab3"} gateway-1 | {"time_local":"03/Sep/2024:15:38:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3231","request_time":"4.260","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"816c2d0e49c92ba69e1f8b97df43d95c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 129ms","method":"POST","requestID":"00fc78e60d13dde15b5822197e072b50","responseTime":129,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.136","http_referrer":"","http_user_agent":"node-fetch","requestID":"00fc78e60d13dde15b5822197e072b50"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 127ms","method":"POST","requestID":"6172630e5664f9e9d54d293920756368","responseTime":127,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.135","http_referrer":"","http_user_agent":"node-fetch","requestID":"6172630e5664f9e9d54d293920756368"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwNn0.X5ErLWCmCN9CZR3U2wVp7iM6xzyjF3zWhmts3P331EY","level":"info","message":"auth send jwt","requestID":"79acd65e5147627ab3a921d798442946"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"79acd65e5147627ab3a921d798442946","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"79acd65e5147627ab3a921d798442946"} gateway-1 | {"time_local":"03/Sep/2024:15:38:26 +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.737","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"7ca3be8b79f8a9b44b8cb727b5ebb889"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":469,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:26Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":469,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":6.857434,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"79acd65e5147627ab3a921d798442946","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377906,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwNn0.X5ErLWCmCN9CZR3U2wVp7iM6xzyjF3zWhmts3P331EY"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"79acd65e5147627ab3a921d798442946","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/ad1b6b49-20de-4ea4-9bd6-43e738e6e65b' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/73e9c217-e8a3-4ce3-81ea-6b75e8b3da8a' 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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc71426-94e4-4ff3-926a-343f2c4bea81","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"dc96081e-eb0c-449b-bccb-f593fda84ae0","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377906.1525404} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"79acd65e5147627ab3a921d798442946","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5b9ec272-940d-4263-a3db-da1ef35d6595","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377906.1580396} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"79acd65e5147627ab3a921d798442946","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc71426-94e4-4ff3-926a-343f2c4bea81","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"480db3b8-1b06-4d5f-83d7-5107f02b3934","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377906.1689835} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"58f60e9c-d519-46c9-9aaf-9c63b0419a64","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377906.1691334} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"79acd65e5147627ab3a921d798442946","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc71426-94e4-4ff3-926a-343f2c4bea81","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc71426-94e4-4ff3-926a-343f2c4bea81","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:26.168962085Z"}]},"request_id":"c79ba35e-e473-45b3-9c89-ec67f8a7429f","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377906.1740248} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"79acd65e5147627ab3a921d798442946","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"79acd65e5147627ab3a921d798442946"} gateway-1 | {"time_local":"03/Sep/2024:15:38:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.055","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"79acd65e5147627ab3a921d798442946"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"79acd65e5147627ab3a921d798442946","responseTime":49,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwNn0.X5ErLWCmCN9CZR3U2wVp7iM6xzyjF3zWhmts3P331EY","level":"info","message":"auth send jwt","requestID":"a507b280f50003ce35bdbc367d60c2f4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a507b280f50003ce35bdbc367d60c2f4","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a507b280f50003ce35bdbc367d60c2f4"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":470,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:26Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":470,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.906228,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a507b280f50003ce35bdbc367d60c2f4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377906,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwNn0.X5ErLWCmCN9CZR3U2wVp7iM6xzyjF3zWhmts3P331EY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a507b280f50003ce35bdbc367d60c2f4","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F34b22189-b433-4418-9825-15a09ba51308","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"04dd323a-c7f6-48a6-ba3e-ddbb3b68564a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377906.2000105} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a507b280f50003ce35bdbc367d60c2f4","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f72598b1-06aa-489d-bc71-2411bb5b1b66","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377906.2086601} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"a507b280f50003ce35bdbc367d60c2f4","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F34b22189-b433-4418-9825-15a09ba51308","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"1394a196-ead7-48bd-aaec-df1bc6ff84b5","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377906.2236454} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cc5bee37-7788-4f56-8f62-ce580f3d5e42","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377906.2238958} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"a507b280f50003ce35bdbc367d60c2f4","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F34b22189-b433-4418-9825-15a09ba51308","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F34b22189-b433-4418-9825-15a09ba51308","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:26.223625783Z"}]},"request_id":"5547fa38-2e48-4d38-b88e-94db221d4a01","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377906.2273483} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a507b280f50003ce35bdbc367d60c2f4","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a507b280f50003ce35bdbc367d60c2f4"} gateway-1 | {"time_local":"03/Sep/2024:15:38:26 +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":"a507b280f50003ce35bdbc367d60c2f4"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"a507b280f50003ce35bdbc367d60c2f4","responseTime":48,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwNn0.X5ErLWCmCN9CZR3U2wVp7iM6xzyjF3zWhmts3P331EY","level":"info","message":"auth send jwt","requestID":"4ae2e2d560ff22f9060cdce757d0bc98"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4ae2e2d560ff22f9060cdce757d0bc98","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4ae2e2d560ff22f9060cdce757d0bc98"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":471,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:26Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":471,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.07039,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:26Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/dbc71426-94e4-4ff3-926a-343f2c4bea81","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"4ae2e2d560ff22f9060cdce757d0bc98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/dbc71426-94e4-4ff3-926a-343f2c4bea81","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377906,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwNn0.X5ErLWCmCN9CZR3U2wVp7iM6xzyjF3zWhmts3P331EY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4ae2e2d560ff22f9060cdce757d0bc98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc71426-94e4-4ff3-926a-343f2c4bea81","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc71426-94e4-4ff3-926a-343f2c4bea81","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:26.168962085Z"}]},"request_id":"7faf693f-8d10-43b9-8eef-1e6d82919e33","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377906.6854305} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4ae2e2d560ff22f9060cdce757d0bc98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7aaf45b2-a187-4bf0-9b85-777f33cb80b2","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377906.6915927} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"4ae2e2d560ff22f9060cdce757d0bc98","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc71426-94e4-4ff3-926a-343f2c4bea81","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc71426-94e4-4ff3-926a-343f2c4bea81","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:26.168962085Z"}]},"request_id":"0ee013f4-d9fe-4ccb-9415-26d6d9c7fbdd","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377906.7041383} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4ae2e2d560ff22f9060cdce757d0bc98","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4ae2e2d560ff22f9060cdce757d0bc98"} gateway-1 | {"time_local":"03/Sep/2024:15:38:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/dbc71426-94e4-4ff3-926a-343f2c4bea81 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.041","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"4ae2e2d560ff22f9060cdce757d0bc98"} device-1 | {"level":"info","message":"PATCH /devices/dbc71426-94e4-4ff3-926a-343f2c4bea81 200 34ms","method":"PATCH","requestID":"4ae2e2d560ff22f9060cdce757d0bc98","responseTime":34,"status":200,"url":"/devices/dbc71426-94e4-4ff3-926a-343f2c4bea81"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwNn0.X5ErLWCmCN9CZR3U2wVp7iM6xzyjF3zWhmts3P331EY","level":"info","message":"auth send jwt","requestID":"27e0119c94d6d8c73abb5466057dc2d5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"27e0119c94d6d8c73abb5466057dc2d5","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"27e0119c94d6d8c73abb5466057dc2d5"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":472,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:26Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":472,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.202786,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:26Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/dbc71426-94e4-4ff3-926a-343f2c4bea81","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"27e0119c94d6d8c73abb5466057dc2d5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/dbc71426-94e4-4ff3-926a-343f2c4bea81","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377906,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwNn0.X5ErLWCmCN9CZR3U2wVp7iM6xzyjF3zWhmts3P331EY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"27e0119c94d6d8c73abb5466057dc2d5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"27e0119c94d6d8c73abb5466057dc2d5"} gateway-1 | {"time_local":"03/Sep/2024:15:38:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/dbc71426-94e4-4ff3-926a-343f2c4bea81/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.025","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"27e0119c94d6d8c73abb5466057dc2d5"} device-1 | {"level":"info","message":"POST /devices/dbc71426-94e4-4ff3-926a-343f2c4bea81/websocket 200 19ms","method":"POST","requestID":"27e0119c94d6d8c73abb5466057dc2d5","responseTime":20,"status":200,"url":"/devices/dbc71426-94e4-4ff3-926a-343f2c4bea81/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/dbc71426-94e4-4ff3-926a-343f2c4bea81' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fb7410ce61b6f1ac3398db84d3330fed","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"fb7410ce61b6f1ac3398db84d3330fed","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"03/Sep/2024:15:38:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/34b22189-b433-4418-9825-15a09ba51308/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":"fb7410ce61b6f1ac3398db84d3330fed"} device-1 | {"level":"info","message":"OPTIONS /devices/34b22189-b433-4418-9825-15a09ba51308/websocket 200 1ms","method":"OPTIONS","requestID":"fb7410ce61b6f1ac3398db84d3330fed","responseTime":1,"status":200,"url":"/devices/34b22189-b433-4418-9825-15a09ba51308/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwOH0.G9lbdVNk7f9sBIGzV3XQH4RX5rNM8RjS1RxqRks8cDo","level":"info","message":"auth send jwt","requestID":"0b5a3c980150b21de75f76823717a385"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0b5a3c980150b21de75f76823717a385","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0b5a3c980150b21de75f76823717a385"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":473,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:28Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":473,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.263997,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:28Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/34b22189-b433-4418-9825-15a09ba51308","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"0b5a3c980150b21de75f76823717a385","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/34b22189-b433-4418-9825-15a09ba51308","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377908,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwOH0.G9lbdVNk7f9sBIGzV3XQH4RX5rNM8RjS1RxqRks8cDo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0b5a3c980150b21de75f76823717a385","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0b5a3c980150b21de75f76823717a385"} gateway-1 | {"time_local":"03/Sep/2024:15:38:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/34b22189-b433-4418-9825-15a09ba51308/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":"0b5a3c980150b21de75f76823717a385"} device-1 | {"level":"info","message":"POST /devices/34b22189-b433-4418-9825-15a09ba51308/websocket 200 22ms","method":"POST","requestID":"0b5a3c980150b21de75f76823717a385","responseTime":22,"status":200,"url":"/devices/34b22189-b433-4418-9825-15a09ba51308/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/34b22189-b433-4418-9825-15a09ba51308' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwOH0.G9lbdVNk7f9sBIGzV3XQH4RX5rNM8RjS1RxqRks8cDo","level":"info","message":"auth send jwt","requestID":"d9d1a0075c914f8512dd5d32ca4c7dee"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d9d1a0075c914f8512dd5d32ca4c7dee","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d9d1a0075c914f8512dd5d32ca4c7dee"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":474,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:28Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":474,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.314016,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dbc71426-94e4-4ff3-926a-343f2c4bea81","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"d9d1a0075c914f8512dd5d32ca4c7dee","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/dbc71426-94e4-4ff3-926a-343f2c4bea81","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377908,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwOH0.G9lbdVNk7f9sBIGzV3XQH4RX5rNM8RjS1RxqRks8cDo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d9d1a0075c914f8512dd5d32ca4c7dee","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc71426-94e4-4ff3-926a-343f2c4bea81","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc71426-94e4-4ff3-926a-343f2c4bea81","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:26.168962085Z"}]},"request_id":"116bef45-3ca2-44b1-9aa3-06aa3d5cde40","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377908.327874} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d9d1a0075c914f8512dd5d32ca4c7dee","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d9d1a0075c914f8512dd5d32ca4c7dee"} device-1 | {"level":"info","message":"GET /devices/dbc71426-94e4-4ff3-926a-343f2c4bea81? 200 21ms","method":"GET","requestID":"d9d1a0075c914f8512dd5d32ca4c7dee","responseTime":21,"status":200,"url":"/devices/dbc71426-94e4-4ff3-926a-343f2c4bea81?"} gateway-1 | {"time_local":"03/Sep/2024:15:38:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/dbc71426-94e4-4ff3-926a-343f2c4bea81? 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":"d9d1a0075c914f8512dd5d32ca4c7dee"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwOH0.G9lbdVNk7f9sBIGzV3XQH4RX5rNM8RjS1RxqRks8cDo","level":"info","message":"auth send jwt","requestID":"c58b6adeb2d1dae7e6b59dfec3774603"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c58b6adeb2d1dae7e6b59dfec3774603","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c58b6adeb2d1dae7e6b59dfec3774603"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":475,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:28Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":475,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.250641,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/34b22189-b433-4418-9825-15a09ba51308","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"c58b6adeb2d1dae7e6b59dfec3774603","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/34b22189-b433-4418-9825-15a09ba51308","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377908,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwOH0.G9lbdVNk7f9sBIGzV3XQH4RX5rNM8RjS1RxqRks8cDo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c58b6adeb2d1dae7e6b59dfec3774603","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F34b22189-b433-4418-9825-15a09ba51308","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F34b22189-b433-4418-9825-15a09ba51308","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:26.223625783Z"}]},"request_id":"e40fc82e-b188-432c-b722-60462d0a163c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377908.3553913} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c58b6adeb2d1dae7e6b59dfec3774603","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c58b6adeb2d1dae7e6b59dfec3774603"} gateway-1 | {"time_local":"03/Sep/2024:15:38:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/34b22189-b433-4418-9825-15a09ba51308? 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":"c58b6adeb2d1dae7e6b59dfec3774603"} device-1 | {"level":"info","message":"GET /devices/34b22189-b433-4418-9825-15a09ba51308? 200 17ms","method":"GET","requestID":"c58b6adeb2d1dae7e6b59dfec3774603","responseTime":17,"status":200,"url":"/devices/34b22189-b433-4418-9825-15a09ba51308?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwOH0.G9lbdVNk7f9sBIGzV3XQH4RX5rNM8RjS1RxqRks8cDo","level":"info","message":"auth send jwt","requestID":"8e830136a6fe0bddb56c8c4968ff1e96"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"8e830136a6fe0bddb56c8c4968ff1e96","responseTime":7,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"8e830136a6fe0bddb56c8c4968ff1e96"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":476,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:28Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":476,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.68815,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:28Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8e830136a6fe0bddb56c8c4968ff1e96","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377908,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwOH0.G9lbdVNk7f9sBIGzV3XQH4RX5rNM8RjS1RxqRks8cDo"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"8e830136a6fe0bddb56c8c4968ff1e96","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3f5056e1-779c-4d28-9e1a-69a73f2ce389"},"level":"info","message":"Attempting to run experiment","requestID":"8e830136a6fe0bddb56c8c4968ff1e96"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3f5056e1-779c-4d28-9e1a-69a73f2ce389"},"level":"info","message":"Attempting to book experiment","requestID":"8e830136a6fe0bddb56c8c4968ff1e96"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3f5056e1-779c-4d28-9e1a-69a73f2ce389"},"level":"info","message":"Successfully booked experiment","requestID":"8e830136a6fe0bddb56c8c4968ff1e96"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"90da0840-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"90da2f50-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":477,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:28Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":477,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.09351,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:28Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":478,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dbc71426-94e4-4ff3-926a-343f2c4bea81","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"90da0840-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/dbc71426-94e4-4ff3-926a-343f2c4bea81","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377908,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwOH0.G9lbdVNk7f9sBIGzV3XQH4RX5rNM8RjS1RxqRks8cDo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"90da0840-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":478,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.783662,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/34b22189-b433-4418-9825-15a09ba51308","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"90da2f50-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/34b22189-b433-4418-9825-15a09ba51308","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377908,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwOH0.G9lbdVNk7f9sBIGzV3XQH4RX5rNM8RjS1RxqRks8cDo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"90da2f50-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc71426-94e4-4ff3-926a-343f2c4bea81","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc71426-94e4-4ff3-926a-343f2c4bea81","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:26.168962085Z"}]},"request_id":"a10553f6-a556-4cad-bd59-712ddc42814e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377908.432361} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"90da0840-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F34b22189-b433-4418-9825-15a09ba51308","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F34b22189-b433-4418-9825-15a09ba51308","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:26.223625783Z"}]},"request_id":"ae87d91a-966e-4f78-be9f-839cf214d0dd","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377908.4339042} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"90da2f50-6a0a-11ef-9b41-2363e6623fc8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"90da0840-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/dbc71426-94e4-4ff3-926a-343f2c4bea81? 200 18ms","method":"GET","requestID":"90da0840-6a0a-11ef-9b41-2363e6623fc8","responseTime":18,"status":200,"url":"/devices/dbc71426-94e4-4ff3-926a-343f2c4bea81?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"90da2f50-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/34b22189-b433-4418-9825-15a09ba51308? 200 18ms","method":"GET","requestID":"90da2f50-6a0a-11ef-9b41-2363e6623fc8","responseTime":18,"status":200,"url":"/devices/34b22189-b433-4418-9825-15a09ba51308?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3f5056e1-779c-4d28-9e1a-69a73f2ce389"},"level":"info","message":"Setting up experiment","requestID":"8e830136a6fe0bddb56c8c4968ff1e96"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3f5056e1-779c-4d28-9e1a-69a73f2ce389"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"8e830136a6fe0bddb56c8c4968ff1e96"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3f5056e1-779c-4d28-9e1a-69a73f2ce389"},"level":"info","message":"Successfully locked booking for experiment","requestID":"8e830136a6fe0bddb56c8c4968ff1e96"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3f5056e1-779c-4d28-9e1a-69a73f2ce389"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"8e830136a6fe0bddb56c8c4968ff1e96"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3f5056e1-779c-4d28-9e1a-69a73f2ce389"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"8e830136a6fe0bddb56c8c4968ff1e96"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3f5056e1-779c-4d28-9e1a-69a73f2ce389"},"level":"info","message":"Attempting to update booking for experiment","requestID":"8e830136a6fe0bddb56c8c4968ff1e96"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3f5056e1-779c-4d28-9e1a-69a73f2ce389"},"level":"info","message":"Successfully updated booking for experiment","requestID":"8e830136a6fe0bddb56c8c4968ff1e96"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3f5056e1-779c-4d28-9e1a-69a73f2ce389"},"level":"info","message":"Successfully set up experiment","requestID":"8e830136a6fe0bddb56c8c4968ff1e96"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"90e552e0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"90e5a100-6a0a-11ef-9b41-2363e6623fc8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3f5056e1-779c-4d28-9e1a-69a73f2ce389"},"level":"info","message":"Successfully running experiment","requestID":"8e830136a6fe0bddb56c8c4968ff1e96"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"90e61630-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":479,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:28Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":479,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.5781,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:28Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":480,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dbc71426-94e4-4ff3-926a-343f2c4bea81","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"90e552e0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/dbc71426-94e4-4ff3-926a-343f2c4bea81","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377908,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwOH0.G9lbdVNk7f9sBIGzV3XQH4RX5rNM8RjS1RxqRks8cDo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"90e552e0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":480,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.98757,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/34b22189-b433-4418-9825-15a09ba51308","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"90e5a100-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/34b22189-b433-4418-9825-15a09ba51308","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377908,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwOH0.G9lbdVNk7f9sBIGzV3XQH4RX5rNM8RjS1RxqRks8cDo"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"90e5a100-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":481,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:28Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc71426-94e4-4ff3-926a-343f2c4bea81","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7cec1b96-64bf-4d65-a038-00288f2dbbc4","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377908.5053527} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":481,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.224977,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dbc71426-94e4-4ff3-926a-343f2c4bea81","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"90e61630-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dbc71426-94e4-4ff3-926a-343f2c4bea81","object_type":"device","rebac_allow":false,"scope_allow":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":"90e61630-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc71426-94e4-4ff3-926a-343f2c4bea81","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc71426-94e4-4ff3-926a-343f2c4bea81","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:26.168962085Z"}]},"request_id":"1530d882-67d1-4390-b659-65a01be3692c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377908.5091856} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"90e552e0-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F34b22189-b433-4418-9825-15a09ba51308","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F34b22189-b433-4418-9825-15a09ba51308","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:26.223625783Z"}]},"request_id":"9e06f47f-279a-421e-b05b-4e1ed40f0f1b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377908.513282} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"90e5a100-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"90e61630-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/dbc71426-94e4-4ff3-926a-343f2c4bea81/signaling 200 17ms","method":"POST","requestID":"90e61630-6a0a-11ef-9b41-2363e6623fc8","responseTime":17,"status":200,"url":"/devices/dbc71426-94e4-4ff3-926a-343f2c4bea81/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"90e97190-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3f5056e1-779c-4d28-9e1a-69a73f2ce389#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3f5056e1-779c-4d28-9e1a-69a73f2ce389","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"f202c6ab-169c-4e52-a900-703bd67e6273","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377908.521974} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0adfc46e-584d-4c31-a193-1c5d7ab721f1","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377908.522236} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"90e552e0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/dbc71426-94e4-4ff3-926a-343f2c4bea81? 200 30ms","method":"GET","requestID":"90e552e0-6a0a-11ef-9b41-2363e6623fc8","responseTime":30,"status":200,"url":"/devices/dbc71426-94e4-4ff3-926a-343f2c4bea81?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"90e5a100-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/34b22189-b433-4418-9825-15a09ba51308? 200 30ms","method":"GET","requestID":"90e5a100-6a0a-11ef-9b41-2363e6623fc8","responseTime":30,"status":200,"url":"/devices/34b22189-b433-4418-9825-15a09ba51308?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"8e830136a6fe0bddb56c8c4968ff1e96","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":482,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:28Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"90ea8300-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F34b22189-b433-4418-9825-15a09ba51308","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f56fa0c0-123e-40a9-ac20-5962298ddd8b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377908.5284472} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":482,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.89602,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/34b22189-b433-4418-9825-15a09ba51308","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"90e97190-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/34b22189-b433-4418-9825-15a09ba51308","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"90e97190-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":483,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:28Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/3f5056e1-779c-4d28-9e1a-69a73f2ce389","user":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"8e830136a6fe0bddb56c8c4968ff1e96"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"90e97190-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc71426-94e4-4ff3-926a-343f2c4bea81","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b221f84b-37e9-4bfe-b8c8-ee5ad7d1aa34","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377908.5343375} device-1 | {"level":"info","message":"POST /devices/34b22189-b433-4418-9825-15a09ba51308/signaling 200 13ms","method":"POST","requestID":"90e97190-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/devices/34b22189-b433-4418-9825-15a09ba51308/signaling"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":483,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.504903,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:28Z"} experiment-1 | {"level":"info","message":"POST /experiments? 201 162ms","method":"POST","requestID":"8e830136a6fe0bddb56c8c4968ff1e96","responseTime":162,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dbc71426-94e4-4ff3-926a-343f2c4bea81","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"90ea8300-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dbc71426-94e4-4ff3-926a-343f2c4bea81","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"90ea8300-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"90ea8300-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/dbc71426-94e4-4ff3-926a-343f2c4bea81/signaling 200 10ms","method":"POST","requestID":"90ea8300-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/devices/dbc71426-94e4-4ff3-926a-343f2c4bea81/signaling"} gateway-1 | {"time_local":"03/Sep/2024:15:38:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1291","request_time":"0.175","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8e830136a6fe0bddb56c8c4968ff1e96"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"90ec7ed0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":484,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:28Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwOH0.G9lbdVNk7f9sBIGzV3XQH4RX5rNM8RjS1RxqRks8cDo","level":"info","message":"auth send jwt","requestID":"5fd6e98574a298f0578ea31f0d49024f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5fd6e98574a298f0578ea31f0d49024f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5fd6e98574a298f0578ea31f0d49024f"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F34b22189-b433-4418-9825-15a09ba51308","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b985a11e-d30c-4b0c-a786-11b64cbfdc8d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377908.5462334} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":484,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.42491,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/34b22189-b433-4418-9825-15a09ba51308","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"90ec7ed0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/34b22189-b433-4418-9825-15a09ba51308","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"90ec7ed0-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":485,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:28Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":485,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.717185,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:28Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"90ec7ed0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dbc71426-94e4-4ff3-926a-343f2c4bea81","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"5fd6e98574a298f0578ea31f0d49024f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/dbc71426-94e4-4ff3-926a-343f2c4bea81","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377908,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwOH0.G9lbdVNk7f9sBIGzV3XQH4RX5rNM8RjS1RxqRks8cDo"} device-1 | {"level":"info","message":"POST /devices/34b22189-b433-4418-9825-15a09ba51308/signaling 200 10ms","method":"POST","requestID":"90ec7ed0-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/devices/34b22189-b433-4418-9825-15a09ba51308/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5fd6e98574a298f0578ea31f0d49024f","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3f5056e1-779c-4d28-9e1a-69a73f2ce389"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"8e830136a6fe0bddb56c8c4968ff1e96"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3f5056e1-779c-4d28-9e1a-69a73f2ce389"},"level":"info","message":"Building connection plan","requestID":"8e830136a6fe0bddb56c8c4968ff1e96"} 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":"a833b91b-7584-4d72-8566-80a1c9ed3001"},{"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":"28905492-e8e4-4538-a058-166cef263c86"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"11dfe336-81e4-4577-bb86-2dd7d10ecc79"}]},"level":"info","message":"Built pairwise service configurations","requestID":"8e830136a6fe0bddb56c8c4968ff1e96"} 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/dbc71426-94e4-4ff3-926a-343f2c4bea81"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/34b22189-b433-4418-9825-15a09ba51308"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"8e830136a6fe0bddb56c8c4968ff1e96"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"90ee7aa0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc71426-94e4-4ff3-926a-343f2c4bea81","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc71426-94e4-4ff3-926a-343f2c4bea81","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:26.168962085Z"}]},"request_id":"30035954-49dc-483e-98e2-df68062ad093","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377908.5544665} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5fd6e98574a298f0578ea31f0d49024f","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":486,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:28Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":486,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.702299,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:28Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5fd6e98574a298f0578ea31f0d49024f"} gateway-1 | {"time_local":"03/Sep/2024:15:38:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/dbc71426-94e4-4ff3-926a-343f2c4bea81? 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":"5fd6e98574a298f0578ea31f0d49024f"} device-1 | {"level":"info","message":"GET /devices/dbc71426-94e4-4ff3-926a-343f2c4bea81? 200 11ms","method":"GET","requestID":"5fd6e98574a298f0578ea31f0d49024f","responseTime":11,"status":200,"url":"/devices/dbc71426-94e4-4ff3-926a-343f2c4bea81?"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"90ee7aa0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377908,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwOH0.G9lbdVNk7f9sBIGzV3XQH4RX5rNM8RjS1RxqRks8cDo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"90ee7aa0-6a0a-11ef-9b41-2363e6623fc8","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwOH0.G9lbdVNk7f9sBIGzV3XQH4RX5rNM8RjS1RxqRks8cDo","level":"info","message":"auth send jwt","requestID":"07f6f1fff3a95226b676b5feddf45dac"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"07f6f1fff3a95226b676b5feddf45dac","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"07f6f1fff3a95226b676b5feddf45dac"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","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%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"35f90553-a281-41cf-a89d-7bb2b2e79223","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377908.565887} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"26fee1bb-b6ac-4747-aad5-efcf8bbffe04","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377908.5660994} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":487,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:28Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":487,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.773419,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:28Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"90ee7aa0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/34b22189-b433-4418-9825-15a09ba51308","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"07f6f1fff3a95226b676b5feddf45dac","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/34b22189-b433-4418-9825-15a09ba51308","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377908,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkwOH0.G9lbdVNk7f9sBIGzV3XQH4RX5rNM8RjS1RxqRks8cDo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"07f6f1fff3a95226b676b5feddf45dac","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F34b22189-b433-4418-9825-15a09ba51308","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F34b22189-b433-4418-9825-15a09ba51308","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:26.223625783Z"}]},"request_id":"f780fa4d-b4b7-4671-9a2d-1286345f37ca","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377908.5728693} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"07f6f1fff3a95226b676b5feddf45dac","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"90ee7aa0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"90ee7aa0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/3d262994-c34f-4cdc-a78e-d45856cc4b69'","requestID":"90ee7aa0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/3d262994-c34f-4cdc-a78e-d45856cc4b69'","requestID":"90ee7aa0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"90ee7aa0-6a0a-11ef-9b41-2363e6623fc8"} 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":"90ee7aa0-6a0a-11ef-9b41-2363e6623fc8","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":"getDevicesByDeviceId succeeded","requestID":"07f6f1fff3a95226b676b5feddf45dac"} device-1 | {"level":"info","message":"GET /devices/34b22189-b433-4418-9825-15a09ba51308? 200 21ms","method":"GET","requestID":"07f6f1fff3a95226b676b5feddf45dac","responseTime":21,"status":200,"url":"/devices/34b22189-b433-4418-9825-15a09ba51308?"} gateway-1 | {"time_local":"03/Sep/2024:15:38:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/34b22189-b433-4418-9825-15a09ba51308? 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":"07f6f1fff3a95226b676b5feddf45dac"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"90ee7aa0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/3d262994-c34f-4cdc-a78e-d45856cc4b69","device":"34b22189-b433-4418-9825-15a09ba51308","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/3f5056e1-779c-4d28-9e1a-69a73f2ce389"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"8e830136a6fe0bddb56c8c4968ff1e96"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"90f81790-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":488,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:28Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc71426-94e4-4ff3-926a-343f2c4bea81","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4042a27d-777f-45e4-bb0a-4af0eeb57f98","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377908.622195} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":488,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.564187,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dbc71426-94e4-4ff3-926a-343f2c4bea81","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"90f81790-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dbc71426-94e4-4ff3-926a-343f2c4bea81","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"90f81790-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"90f81790-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/dbc71426-94e4-4ff3-926a-343f2c4bea81/signaling 200 9ms","method":"POST","requestID":"90f81790-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/devices/dbc71426-94e4-4ff3-926a-343f2c4bea81/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"90f9c540-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":489,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:28Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F34b22189-b433-4418-9825-15a09ba51308","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9f15930c-8fba-414f-b208-e3eb7c18ece6","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377908.6318107} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":489,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.125797,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/34b22189-b433-4418-9825-15a09ba51308","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"90f9c540-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/34b22189-b433-4418-9825-15a09ba51308","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"90f9c540-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"90f9c540-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/34b22189-b433-4418-9825-15a09ba51308/signaling 200 7ms","method":"POST","requestID":"90f9c540-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/devices/34b22189-b433-4418-9825-15a09ba51308/signaling"} device-1 | {"device":"34b22189-b433-4418-9825-15a09ba51308","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"34b22189-b433-4418-9825-15a09ba51308","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 5232161495088088044 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:+t84\r\na=ice-pwd:mRkFh1+gL0QRFwOxlrKk8itU\r\na=ice-options:trickle\r\na=fingerprint:sha-256 76:BB:B1:D1:8F:36:9D:23:E3:8C:59:6B:48:B3:FA:6F:9C:6E:7D:7D:E7:F0:56:4E:ED:36:3B:3D:B3:73:E9:8C\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"34b22189-b433-4418-9825-15a09ba51308","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"device":"34b22189-b433-4418-9825-15a09ba51308","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"dbc71426-94e4-4ff3-926a-343f2c4bea81","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":"3d262994-c34f-4cdc-a78e-d45856cc4b69","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"dbc71426-94e4-4ff3-926a-343f2c4bea81","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":"dbc71426-94e4-4ff3-926a-343f2c4bea81","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":"dbc71426-94e4-4ff3-926a-343f2c4bea81","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":"dbc71426-94e4-4ff3-926a-343f2c4bea81","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/3d262994-c34f-4cdc-a78e-d45856cc4b69' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3d262994-c34f-4cdc-a78e-d45856cc4b69","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b51c54896dcb9a47f42f600c9f4e85a8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b51c54896dcb9a47f42f600c9f4e85a8","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/dbc71426-94e4-4ff3-926a-343f2c4bea81"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/34b22189-b433-4418-9825-15a09ba51308"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/3d262994-c34f-4cdc-a78e-d45856cc4b69"}}},"level":"info","message":"received a callback","requestID":"b51c54896dcb9a47f42f600c9f4e85a8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"b51c54896dcb9a47f42f600c9f4e85a8","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"b51c54896dcb9a47f42f600c9f4e85a8"} device-1 | {"content":{"candidate":"candidate:3380055572 1 udp 2113937151 3198970e-64e1-4d35-afd9-59b678759e73.local 59181 typ host generation 0 ufrag +t84 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"34b22189-b433-4418-9825-15a09ba51308","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1515990791 1 udp 1677729535 141.24.211.56 59181 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag +t84 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"34b22189-b433-4418-9825-15a09ba51308","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3832583413 1 udp 33562623 141.24.210.113 54194 typ relay raddr 141.24.211.56 rport 59181 generation 0 ufrag +t84 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"34b22189-b433-4418-9825-15a09ba51308","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"34b22189-b433-4418-9825-15a09ba51308","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/34b22189-b433-4418-9825-15a09ba51308'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/34b22189-b433-4418-9825-15a09ba51308'"} device-1 | {"data":{"peerconnection":"3d262994-c34f-4cdc-a78e-d45856cc4b69","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"dbc71426-94e4-4ff3-926a-343f2c4bea81","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":"34b22189-b433-4418-9825-15a09ba51308","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"dbc71426-94e4-4ff3-926a-343f2c4bea81","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":"3d262994-c34f-4cdc-a78e-d45856cc4b69","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/3d262994-c34f-4cdc-a78e-d45856cc4b69' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3d262994-c34f-4cdc-a78e-d45856cc4b69","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e9e16d674c2b28cd9dd93ef53dafe30d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e9e16d674c2b28cd9dd93ef53dafe30d","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/dbc71426-94e4-4ff3-926a-343f2c4bea81"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/34b22189-b433-4418-9825-15a09ba51308"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/3d262994-c34f-4cdc-a78e-d45856cc4b69"}}},"level":"info","message":"received a callback","requestID":"e9e16d674c2b28cd9dd93ef53dafe30d"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"923be230-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":490,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:30Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3d262994-c34f-4cdc-a78e-d45856cc4b69","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"73bcd9bd-2448-4faa-b2ed-58da34aeed57","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377910.7454462} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":490,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.943265,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/3d262994-c34f-4cdc-a78e-d45856cc4b69","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"923be230-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/3d262994-c34f-4cdc-a78e-d45856cc4b69","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":"923be230-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"923be230-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /peerconnections/3d262994-c34f-4cdc-a78e-d45856cc4b69 200 10ms","method":"GET","requestID":"923be230-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/peerconnections/3d262994-c34f-4cdc-a78e-d45856cc4b69"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 39ms","method":"POST","requestID":"e9e16d674c2b28cd9dd93ef53dafe30d","responseTime":39,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.042","http_referrer":"","http_user_agent":"node-fetch","requestID":"e9e16d674c2b28cd9dd93ef53dafe30d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9240eb40-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":491,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:30Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc71426-94e4-4ff3-926a-343f2c4bea81","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1a10c08d-4c56-4b55-b02a-2678b344cbb0","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377910.7776911} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":491,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.755839,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dbc71426-94e4-4ff3-926a-343f2c4bea81","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9240eb40-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dbc71426-94e4-4ff3-926a-343f2c4bea81","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"9240eb40-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9240eb40-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/dbc71426-94e4-4ff3-926a-343f2c4bea81/signaling 200 11ms","method":"POST","requestID":"9240eb40-6a0a-11ef-9b41-2363e6623fc8","responseTime":11,"status":200,"url":"/devices/dbc71426-94e4-4ff3-926a-343f2c4bea81/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"92430e20-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":492,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:30Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F34b22189-b433-4418-9825-15a09ba51308","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cae67e56-b96c-4144-9ee3-1def7f195c9d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377910.7928786} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":492,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.658063,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/34b22189-b433-4418-9825-15a09ba51308","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"92430e20-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/34b22189-b433-4418-9825-15a09ba51308","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"92430e20-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"92430e20-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/34b22189-b433-4418-9825-15a09ba51308/signaling 200 14ms","method":"POST","requestID":"92430e20-6a0a-11ef-9b41-2363e6623fc8","responseTime":14,"status":200,"url":"/devices/34b22189-b433-4418-9825-15a09ba51308/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxMH0.l6oz1pGZHDW29J5HA0ZArizANrKeFjyM8EoRl6W41YU","level":"info","message":"auth send jwt","requestID":"806fac5478d2fdc87134520e6e03becb"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"806fac5478d2fdc87134520e6e03becb","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/3f5056e1-779c-4d28-9e1a-69a73f2ce389","requestID":"806fac5478d2fdc87134520e6e03becb"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":493,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:30Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":493,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.197924,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/3f5056e1-779c-4d28-9e1a-69a73f2ce389","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"806fac5478d2fdc87134520e6e03becb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/3f5056e1-779c-4d28-9e1a-69a73f2ce389","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377910,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxMH0.l6oz1pGZHDW29J5HA0ZArizANrKeFjyM8EoRl6W41YU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"806fac5478d2fdc87134520e6e03becb","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/3f5056e1-779c-4d28-9e1a-69a73f2ce389","requestID":"806fac5478d2fdc87134520e6e03becb"} gateway-1 | {"time_local":"03/Sep/2024:15:38:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/3f5056e1-779c-4d28-9e1a-69a73f2ce389 HTTP/1.1","status": "200","body_bytes_sent":"1364","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"806fac5478d2fdc87134520e6e03becb"} experiment-1 | {"level":"info","message":"GET /experiments/3f5056e1-779c-4d28-9e1a-69a73f2ce389 200 14ms","method":"GET","requestID":"806fac5478d2fdc87134520e6e03becb","responseTime":14,"status":200,"url":"/experiments/3f5056e1-779c-4d28-9e1a-69a73f2ce389"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxMH0.l6oz1pGZHDW29J5HA0ZArizANrKeFjyM8EoRl6W41YU","level":"info","message":"auth send jwt","requestID":"44b265e4fb2685b06dab9c4f9b5d7a37"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"44b265e4fb2685b06dab9c4f9b5d7a37","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/3f5056e1-779c-4d28-9e1a-69a73f2ce389","requestID":"44b265e4fb2685b06dab9c4f9b5d7a37"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":494,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:30Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":494,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.146412,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:30Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/3f5056e1-779c-4d28-9e1a-69a73f2ce389","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"44b265e4fb2685b06dab9c4f9b5d7a37","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/3f5056e1-779c-4d28-9e1a-69a73f2ce389","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377910,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxMH0.l6oz1pGZHDW29J5HA0ZArizANrKeFjyM8EoRl6W41YU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"44b265e4fb2685b06dab9c4f9b5d7a37","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3f5056e1-779c-4d28-9e1a-69a73f2ce389"},"level":"info","message":"Attempting to finish experiment","requestID":"44b265e4fb2685b06dab9c4f9b5d7a37"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"924f6a30-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":495,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:30Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":495,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":2.313089,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:30Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/3d262994-c34f-4cdc-a78e-d45856cc4b69","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"924f6a30-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:http://localhost/peerconnections/3d262994-c34f-4cdc-a78e-d45856cc4b69","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377910,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxMH0.l6oz1pGZHDW29J5HA0ZArizANrKeFjyM8EoRl6W41YU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"924f6a30-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/3d262994-c34f-4cdc-a78e-d45856cc4b69","device":"34b22189-b433-4418-9825-15a09ba51308","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"dbc71426-94e4-4ff3-926a-343f2c4bea81","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":"dbc71426-94e4-4ff3-926a-343f2c4bea81","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":"dbc71426-94e4-4ff3-926a-343f2c4bea81","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/3d262994-c34f-4cdc-a78e-d45856cc4b69' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/3d262994-c34f-4cdc-a78e-d45856cc4b69' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3d262994-c34f-4cdc-a78e-d45856cc4b69","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3d262994-c34f-4cdc-a78e-d45856cc4b69': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3d262994-c34f-4cdc-a78e-d45856cc4b69","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"de770074-3c1b-49a1-8472-27b4b2d422e5","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377910.8973823} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d3b04e6a5476b7a447de6cc52467c538","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"d3b04e6a5476b7a447de6cc52467c538","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"85ad1101-7450-44cf-ac11-4d9928f7dab4","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377910.8979206} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"924f6a30-6a0a-11ef-9b41-2363e6623fc8","responseTime":15,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"aac0f2acc48a50cb6cb0c13c917ea67f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"closed","url":"http://localhost/devices/dbc71426-94e4-4ff3-926a-343f2c4bea81"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/34b22189-b433-4418-9825-15a09ba51308"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/3d262994-c34f-4cdc-a78e-d45856cc4b69"}}},"level":"info","message":"received a callback","requestID":"d3b04e6a5476b7a447de6cc52467c538"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"aac0f2acc48a50cb6cb0c13c917ea67f","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/dbc71426-94e4-4ff3-926a-343f2c4bea81"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/34b22189-b433-4418-9825-15a09ba51308"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/3d262994-c34f-4cdc-a78e-d45856cc4b69"}}},"level":"info","message":"received a callback","requestID":"aac0f2acc48a50cb6cb0c13c917ea67f"} device-1 | {"data":{"peerconnection":"3d262994-c34f-4cdc-a78e-d45856cc4b69","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"924f6a30-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"DELETE /peerconnections/3d262994-c34f-4cdc-a78e-d45856cc4b69 204 54ms","method":"DELETE","requestID":"924f6a30-6a0a-11ef-9b41-2363e6623fc8","responseTime":54,"status":204,"url":"/peerconnections/3d262994-c34f-4cdc-a78e-d45856cc4b69"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3f5056e1-779c-4d28-9e1a-69a73f2ce389"},"level":"info","message":"Successfully finished experiment","requestID":"44b265e4fb2685b06dab9c4f9b5d7a37"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"925b5110-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":496,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:30Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc71426-94e4-4ff3-926a-343f2c4bea81","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b98a34ee-c0bd-4af7-ad6e-1a76bdfcecab","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377910.952584} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":496,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.405487,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dbc71426-94e4-4ff3-926a-343f2c4bea81","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"925b5110-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dbc71426-94e4-4ff3-926a-343f2c4bea81","object_type":"device","rebac_allow":false,"scope_allow":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":"925b5110-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3f5056e1-779c-4d28-9e1a-69a73f2ce389': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3f5056e1-779c-4d28-9e1a-69a73f2ce389","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"b8c8ad7d-ca94-4dcf-8a47-0b18ce643f4c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377910.959703} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"925b5110-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4dbfb5bd-c306-4cc2-bcfe-50205a74859d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377910.9600813} device-1 | {"level":"info","message":"POST /devices/dbc71426-94e4-4ff3-926a-343f2c4bea81/signaling 200 15ms","method":"POST","requestID":"925b5110-6a0a-11ef-9b41-2363e6623fc8","responseTime":15,"status":200,"url":"/devices/dbc71426-94e4-4ff3-926a-343f2c4bea81/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"44b265e4fb2685b06dab9c4f9b5d7a37","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"925e3740-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":497,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:30Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F34b22189-b433-4418-9825-15a09ba51308","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8430960e-afcd-4073-ac2c-35eea2fa94fc","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377910.9713726} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":497,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.929354,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/34b22189-b433-4418-9825-15a09ba51308","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"925e3740-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/34b22189-b433-4418-9825-15a09ba51308","object_type":"device","rebac_allow":false,"scope_allow":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":"925e3740-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"925e3740-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/34b22189-b433-4418-9825-15a09ba51308/signaling 200 14ms","method":"POST","requestID":"925e3740-6a0a-11ef-9b41-2363e6623fc8","responseTime":14,"status":200,"url":"/devices/34b22189-b433-4418-9825-15a09ba51308/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/3f5056e1-779c-4d28-9e1a-69a73f2ce389","requestID":"44b265e4fb2685b06dab9c4f9b5d7a37"} gateway-1 | {"time_local":"03/Sep/2024:15:38:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/3f5056e1-779c-4d28-9e1a-69a73f2ce389 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.188","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"44b265e4fb2685b06dab9c4f9b5d7a37"} gateway-1 | {"time_local":"03/Sep/2024:15:38:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3232","request_time":"4.297","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"fb3aea256083113513bd121076bb451a"} experiment-1 | {"level":"info","message":"DELETE /experiments/3f5056e1-779c-4d28-9e1a-69a73f2ce389 204 183ms","method":"DELETE","requestID":"44b265e4fb2685b06dab9c4f9b5d7a37","responseTime":183,"status":204,"url":"/experiments/3f5056e1-779c-4d28-9e1a-69a73f2ce389"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 136ms","method":"POST","requestID":"d3b04e6a5476b7a447de6cc52467c538","responseTime":136,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.141","http_referrer":"","http_user_agent":"node-fetch","requestID":"d3b04e6a5476b7a447de6cc52467c538"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 134ms","method":"POST","requestID":"aac0f2acc48a50cb6cb0c13c917ea67f","responseTime":134,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.141","http_referrer":"","http_user_agent":"node-fetch","requestID":"aac0f2acc48a50cb6cb0c13c917ea67f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxMX0.cmNLYc-wF2zgmU0RF0_3FYVLOIGnXh6927yyHP1XL9s","level":"info","message":"auth send jwt","requestID":"a40dd921814236d9977198b80b4cb8c2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a40dd921814236d9977198b80b4cb8c2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a40dd921814236d9977198b80b4cb8c2"} gateway-1 | {"time_local":"03/Sep/2024:15:38:31 +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.752","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"ea6fbb1ac9d7390a818e70db109b7b4f"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":498,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":498,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.878207,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a40dd921814236d9977198b80b4cb8c2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377911,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxMX0.cmNLYc-wF2zgmU0RF0_3FYVLOIGnXh6927yyHP1XL9s"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a40dd921814236d9977198b80b4cb8c2","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/dbc71426-94e4-4ff3-926a-343f2c4bea81' 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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0843a492-3bd4-4f20-b579-e9f4dec005a7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"30b0c961-32f5-4ff4-8817-c4f459dce161","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377911.064397} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a40dd921814236d9977198b80b4cb8c2","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/34b22189-b433-4418-9825-15a09ba51308' 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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c7798c85-b1f6-4f77-a809-8a6dd8831d3d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377911.070094} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"a40dd921814236d9977198b80b4cb8c2","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0843a492-3bd4-4f20-b579-e9f4dec005a7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"fd1a6dbb-08ff-4cc6-8dee-015c62ef7847","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377911.0799098} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"47d5f4ed-ffcf-46f6-a24d-2cc902eab8ce","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377911.0801404} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"a40dd921814236d9977198b80b4cb8c2","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0843a492-3bd4-4f20-b579-e9f4dec005a7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0843a492-3bd4-4f20-b579-e9f4dec005a7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:31.079880710Z"}]},"request_id":"72de41c4-be16-4d3f-89b1-3dad662b88d9","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377911.0846028} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a40dd921814236d9977198b80b4cb8c2","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a40dd921814236d9977198b80b4cb8c2"} gateway-1 | {"time_local":"03/Sep/2024:15:38:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a40dd921814236d9977198b80b4cb8c2"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"a40dd921814236d9977198b80b4cb8c2","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxMX0.cmNLYc-wF2zgmU0RF0_3FYVLOIGnXh6927yyHP1XL9s","level":"info","message":"auth send jwt","requestID":"aafe7d488bdf816d4af6ecd1508aceee"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"aafe7d488bdf816d4af6ecd1508aceee","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"aafe7d488bdf816d4af6ecd1508aceee"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":499,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":499,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.733063,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"aafe7d488bdf816d4af6ecd1508aceee","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377911,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxMX0.cmNLYc-wF2zgmU0RF0_3FYVLOIGnXh6927yyHP1XL9s"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"aafe7d488bdf816d4af6ecd1508aceee","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c57b7e8-a3d5-4a18-a368-ae1621f65de2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"f35c5f05-005e-4a5f-bbfa-0a12401190ef","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377911.1165955} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"aafe7d488bdf816d4af6ecd1508aceee","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"14d4b90d-e858-41fa-a8e1-8875e4f8469b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377911.1213212} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"aafe7d488bdf816d4af6ecd1508aceee","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c57b7e8-a3d5-4a18-a368-ae1621f65de2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"13533bbe-51e7-4433-abd9-57494c4a5c2e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377911.1321} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4a55599e-7aea-4cd2-ad03-1a445a8620d1","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377911.132509} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"aafe7d488bdf816d4af6ecd1508aceee","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c57b7e8-a3d5-4a18-a368-ae1621f65de2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c57b7e8-a3d5-4a18-a368-ae1621f65de2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:31.132078608Z"}]},"request_id":"d76425eb-6052-492c-a555-8b59651982b1","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377911.1362908} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"aafe7d488bdf816d4af6ecd1508aceee","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"aafe7d488bdf816d4af6ecd1508aceee"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"aafe7d488bdf816d4af6ecd1508aceee","responseTime":44,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"03/Sep/2024:15:38:31 +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":"aafe7d488bdf816d4af6ecd1508aceee"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxMX0.cmNLYc-wF2zgmU0RF0_3FYVLOIGnXh6927yyHP1XL9s","level":"info","message":"auth send jwt","requestID":"d113b7b89d9ad8f92819ae99fe1b9794"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d113b7b89d9ad8f92819ae99fe1b9794","responseTime":4,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxMX0.cmNLYc-wF2zgmU0RF0_3FYVLOIGnXh6927yyHP1XL9s","level":"info","message":"auth send jwt","requestID":"7ddcc9ac9b0f0fd1dab4eebb710db195"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7ddcc9ac9b0f0fd1dab4eebb710db195","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"d113b7b89d9ad8f92819ae99fe1b9794"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"7ddcc9ac9b0f0fd1dab4eebb710db195"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":500,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":500,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.611945,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":501,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0843a492-3bd4-4f20-b579-e9f4dec005a7","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"d113b7b89d9ad8f92819ae99fe1b9794","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/0843a492-3bd4-4f20-b579-e9f4dec005a7","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377911,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxMX0.cmNLYc-wF2zgmU0RF0_3FYVLOIGnXh6927yyHP1XL9s"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d113b7b89d9ad8f92819ae99fe1b9794","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":501,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.738296,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7ddcc9ac9b0f0fd1dab4eebb710db195","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377911,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxMX0.cmNLYc-wF2zgmU0RF0_3FYVLOIGnXh6927yyHP1XL9s"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7ddcc9ac9b0f0fd1dab4eebb710db195","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0843a492-3bd4-4f20-b579-e9f4dec005a7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0843a492-3bd4-4f20-b579-e9f4dec005a7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:31.079880710Z"}]},"request_id":"02996ee6-2a3a-496f-8fea-22ee3160f104","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377911.5916002} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d113b7b89d9ad8f92819ae99fe1b9794","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c57b7e8-a3d5-4a18-a368-ae1621f65de2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c57b7e8-a3d5-4a18-a368-ae1621f65de2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:31.132078608Z"}]},"request_id":"aad11e9a-cecc-4787-aaed-776c8debb60f","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377911.592406} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7ddcc9ac9b0f0fd1dab4eebb710db195","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7e32ecc0-d861-4cfb-b727-c8eeb378f488","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377911.5964947} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"d113b7b89d9ad8f92819ae99fe1b9794","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cd01a66b-ee4c-47af-8f0d-d753b02f3684","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377911.5975947} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"7ddcc9ac9b0f0fd1dab4eebb710db195","responseTime":2,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c57b7e8-a3d5-4a18-a368-ae1621f65de2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c57b7e8-a3d5-4a18-a368-ae1621f65de2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:31.132078608Z"}]},"request_id":"524d82c0-f72e-4ade-aa6c-9278b47b00b5","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377911.6006365} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7ddcc9ac9b0f0fd1dab4eebb710db195","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"7ddcc9ac9b0f0fd1dab4eebb710db195"} gateway-1 | {"time_local":"03/Sep/2024:15:38:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"7ddcc9ac9b0f0fd1dab4eebb710db195"} device-1 | {"level":"info","message":"PATCH /devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2 200 19ms","method":"PATCH","requestID":"7ddcc9ac9b0f0fd1dab4eebb710db195","responseTime":19,"status":200,"url":"/devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxMX0.cmNLYc-wF2zgmU0RF0_3FYVLOIGnXh6927yyHP1XL9s","level":"info","message":"auth send jwt","requestID":"b0f0d93d46881bb4535ee15949d690b1"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"b0f0d93d46881bb4535ee15949d690b1","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"b0f0d93d46881bb4535ee15949d690b1"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":502,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":502,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.90803,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"b0f0d93d46881bb4535ee15949d690b1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377911,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxMX0.cmNLYc-wF2zgmU0RF0_3FYVLOIGnXh6927yyHP1XL9s"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b0f0d93d46881bb4535ee15949d690b1","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0843a492-3bd4-4f20-b579-e9f4dec005a7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0843a492-3bd4-4f20-b579-e9f4dec005a7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:31.079880710Z"}]},"request_id":"c52e3811-d300-4948-9dc9-433683165492","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377911.6115906} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d113b7b89d9ad8f92819ae99fe1b9794","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"d113b7b89d9ad8f92819ae99fe1b9794"} device-1 | {"level":"info","message":"PATCH /devices/0843a492-3bd4-4f20-b579-e9f4dec005a7 200 32ms","method":"PATCH","requestID":"d113b7b89d9ad8f92819ae99fe1b9794","responseTime":32,"status":200,"url":"/devices/0843a492-3bd4-4f20-b579-e9f4dec005a7"} gateway-1 | {"time_local":"03/Sep/2024:15:38:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/0843a492-3bd4-4f20-b579-e9f4dec005a7 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.038","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"d113b7b89d9ad8f92819ae99fe1b9794"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxMX0.cmNLYc-wF2zgmU0RF0_3FYVLOIGnXh6927yyHP1XL9s","level":"info","message":"auth send jwt","requestID":"33dd24e04f224445bbbc734720520a1a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"33dd24e04f224445bbbc734720520a1a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"33dd24e04f224445bbbc734720520a1a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"b0f0d93d46881bb4535ee15949d690b1"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":503,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:31Z"} gateway-1 | {"time_local":"03/Sep/2024:15:38:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.019","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"b0f0d93d46881bb4535ee15949d690b1"} device-1 | {"level":"info","message":"POST /devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2/websocket 200 15ms","method":"POST","requestID":"b0f0d93d46881bb4535ee15949d690b1","responseTime":15,"status":200,"url":"/devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2/websocket"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":503,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.757668,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0843a492-3bd4-4f20-b579-e9f4dec005a7","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"33dd24e04f224445bbbc734720520a1a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/0843a492-3bd4-4f20-b579-e9f4dec005a7","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377911,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxMX0.cmNLYc-wF2zgmU0RF0_3FYVLOIGnXh6927yyHP1XL9s"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"33dd24e04f224445bbbc734720520a1a","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"device 'http://localhost/devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2' connected"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"33dd24e04f224445bbbc734720520a1a"} gateway-1 | {"time_local":"03/Sep/2024:15:38:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/0843a492-3bd4-4f20-b579-e9f4dec005a7/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.020","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"33dd24e04f224445bbbc734720520a1a"} device-1 | {"level":"info","message":"POST /devices/0843a492-3bd4-4f20-b579-e9f4dec005a7/websocket 200 16ms","method":"POST","requestID":"33dd24e04f224445bbbc734720520a1a","responseTime":16,"status":200,"url":"/devices/0843a492-3bd4-4f20-b579-e9f4dec005a7/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/0843a492-3bd4-4f20-b579-e9f4dec005a7' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxMX0.cmNLYc-wF2zgmU0RF0_3FYVLOIGnXh6927yyHP1XL9s","level":"info","message":"auth send jwt","requestID":"531a24b9c362611e5577de4364adaad6"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"531a24b9c362611e5577de4364adaad6","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"531a24b9c362611e5577de4364adaad6"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":504,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":504,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.1751,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0843a492-3bd4-4f20-b579-e9f4dec005a7","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"531a24b9c362611e5577de4364adaad6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/0843a492-3bd4-4f20-b579-e9f4dec005a7","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377911,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxMX0.cmNLYc-wF2zgmU0RF0_3FYVLOIGnXh6927yyHP1XL9s"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"531a24b9c362611e5577de4364adaad6","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0843a492-3bd4-4f20-b579-e9f4dec005a7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0843a492-3bd4-4f20-b579-e9f4dec005a7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:31.079880710Z"}]},"request_id":"4007599e-7bf3-483b-bffb-21ddf12ee534","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377911.6603932} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"531a24b9c362611e5577de4364adaad6","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"531a24b9c362611e5577de4364adaad6"} gateway-1 | {"time_local":"03/Sep/2024:15:38:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0843a492-3bd4-4f20-b579-e9f4dec005a7? 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":"531a24b9c362611e5577de4364adaad6"} device-1 | {"level":"info","message":"GET /devices/0843a492-3bd4-4f20-b579-e9f4dec005a7? 200 13ms","method":"GET","requestID":"531a24b9c362611e5577de4364adaad6","responseTime":13,"status":200,"url":"/devices/0843a492-3bd4-4f20-b579-e9f4dec005a7?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxMX0.cmNLYc-wF2zgmU0RF0_3FYVLOIGnXh6927yyHP1XL9s","level":"info","message":"auth send jwt","requestID":"919f5b8cb4fd5f4c939ed40fd5d58215"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"919f5b8cb4fd5f4c939ed40fd5d58215","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"919f5b8cb4fd5f4c939ed40fd5d58215"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":505,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":505,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.6583,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"919f5b8cb4fd5f4c939ed40fd5d58215","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377911,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxMX0.cmNLYc-wF2zgmU0RF0_3FYVLOIGnXh6927yyHP1XL9s"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"919f5b8cb4fd5f4c939ed40fd5d58215","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c57b7e8-a3d5-4a18-a368-ae1621f65de2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c57b7e8-a3d5-4a18-a368-ae1621f65de2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:31.132078608Z"}]},"request_id":"a33e4cb8-73b4-4e89-b044-8542c2548ae1","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377911.676182} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"919f5b8cb4fd5f4c939ed40fd5d58215","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"919f5b8cb4fd5f4c939ed40fd5d58215"} gateway-1 | {"time_local":"03/Sep/2024:15:38:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2? 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":"919f5b8cb4fd5f4c939ed40fd5d58215"} device-1 | {"level":"info","message":"GET /devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2? 200 10ms","method":"GET","requestID":"919f5b8cb4fd5f4c939ed40fd5d58215","responseTime":10,"status":200,"url":"/devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxMX0.cmNLYc-wF2zgmU0RF0_3FYVLOIGnXh6927yyHP1XL9s","level":"info","message":"auth send jwt","requestID":"db5ccd6f23e3cb780f123bcf6e716dee"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"db5ccd6f23e3cb780f123bcf6e716dee","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"db5ccd6f23e3cb780f123bcf6e716dee"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":506,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":506,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.880575,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"db5ccd6f23e3cb780f123bcf6e716dee","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377911,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxMX0.cmNLYc-wF2zgmU0RF0_3FYVLOIGnXh6927yyHP1XL9s"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"db5ccd6f23e3cb780f123bcf6e716dee","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8ff9d235-3891-4586-a242-72ee869a9134"},"level":"info","message":"Attempting to run experiment","requestID":"db5ccd6f23e3cb780f123bcf6e716dee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8ff9d235-3891-4586-a242-72ee869a9134"},"level":"info","message":"Attempting to book experiment","requestID":"db5ccd6f23e3cb780f123bcf6e716dee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8ff9d235-3891-4586-a242-72ee869a9134"},"level":"info","message":"Successfully booked experiment","requestID":"db5ccd6f23e3cb780f123bcf6e716dee"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"92d31920-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"92d34030-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":507,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":507,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.417806,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0843a492-3bd4-4f20-b579-e9f4dec005a7","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"92d31920-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/0843a492-3bd4-4f20-b579-e9f4dec005a7","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377911,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxMX0.cmNLYc-wF2zgmU0RF0_3FYVLOIGnXh6927yyHP1XL9s"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"92d31920-6a0a-11ef-9b41-2363e6623fc8","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":508,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":508,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.760441,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"92d34030-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377911,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxMX0.cmNLYc-wF2zgmU0RF0_3FYVLOIGnXh6927yyHP1XL9s"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"92d34030-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0843a492-3bd4-4f20-b579-e9f4dec005a7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0843a492-3bd4-4f20-b579-e9f4dec005a7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:31.079880710Z"}]},"request_id":"cd2d2f29-c54a-4969-91d7-b26676e44564","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377911.738824} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"92d31920-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c57b7e8-a3d5-4a18-a368-ae1621f65de2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c57b7e8-a3d5-4a18-a368-ae1621f65de2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:31.132078608Z"}]},"request_id":"20621cfc-af3d-4845-bb4f-d95da0166b76","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377911.7399642} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"92d34030-6a0a-11ef-9b41-2363e6623fc8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"92d31920-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/0843a492-3bd4-4f20-b579-e9f4dec005a7? 200 18ms","method":"GET","requestID":"92d31920-6a0a-11ef-9b41-2363e6623fc8","responseTime":18,"status":200,"url":"/devices/0843a492-3bd4-4f20-b579-e9f4dec005a7?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"92d34030-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2? 200 17ms","method":"GET","requestID":"92d34030-6a0a-11ef-9b41-2363e6623fc8","responseTime":17,"status":200,"url":"/devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8ff9d235-3891-4586-a242-72ee869a9134"},"level":"info","message":"Setting up experiment","requestID":"db5ccd6f23e3cb780f123bcf6e716dee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8ff9d235-3891-4586-a242-72ee869a9134"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"db5ccd6f23e3cb780f123bcf6e716dee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8ff9d235-3891-4586-a242-72ee869a9134"},"level":"info","message":"Successfully locked booking for experiment","requestID":"db5ccd6f23e3cb780f123bcf6e716dee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8ff9d235-3891-4586-a242-72ee869a9134"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"db5ccd6f23e3cb780f123bcf6e716dee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8ff9d235-3891-4586-a242-72ee869a9134"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"db5ccd6f23e3cb780f123bcf6e716dee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8ff9d235-3891-4586-a242-72ee869a9134"},"level":"info","message":"Attempting to update booking for experiment","requestID":"db5ccd6f23e3cb780f123bcf6e716dee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8ff9d235-3891-4586-a242-72ee869a9134"},"level":"info","message":"Successfully updated booking for experiment","requestID":"db5ccd6f23e3cb780f123bcf6e716dee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8ff9d235-3891-4586-a242-72ee869a9134"},"level":"info","message":"Successfully set up experiment","requestID":"db5ccd6f23e3cb780f123bcf6e716dee"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"92ddee90-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"92de63c0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"92de8ad0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":509,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":510,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":509,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.937267,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:31Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8ff9d235-3891-4586-a242-72ee869a9134"},"level":"info","message":"Successfully running experiment","requestID":"db5ccd6f23e3cb780f123bcf6e716dee"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0843a492-3bd4-4f20-b579-e9f4dec005a7","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"92ddee90-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/0843a492-3bd4-4f20-b579-e9f4dec005a7","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377911,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxMX0.cmNLYc-wF2zgmU0RF0_3FYVLOIGnXh6927yyHP1XL9s"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"92ddee90-6a0a-11ef-9b41-2363e6623fc8","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":510,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.778213,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":511,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"92de63c0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377911,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxMX0.cmNLYc-wF2zgmU0RF0_3FYVLOIGnXh6927yyHP1XL9s"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"92de63c0-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0843a492-3bd4-4f20-b579-e9f4dec005a7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aa9e5bf7-8eed-4d31-92f7-aa3a396d43f8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377911.8107533} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":511,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.188658,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0843a492-3bd4-4f20-b579-e9f4dec005a7","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"92de8ad0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0843a492-3bd4-4f20-b579-e9f4dec005a7","object_type":"device","rebac_allow":false,"scope_allow":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":"92de8ad0-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0843a492-3bd4-4f20-b579-e9f4dec005a7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0843a492-3bd4-4f20-b579-e9f4dec005a7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:31.079880710Z"}]},"request_id":"9fa51e10-2856-4d16-bb09-ad5c57be7a38","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377911.8140223} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c57b7e8-a3d5-4a18-a368-ae1621f65de2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c57b7e8-a3d5-4a18-a368-ae1621f65de2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:31.132078608Z"}]},"request_id":"98b778b4-c356-4650-8387-b4b4e4ad3e6f","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377911.8153186} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"92ddee90-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"92de63c0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"92de8ad0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/0843a492-3bd4-4f20-b579-e9f4dec005a7/signaling 200 20ms","method":"POST","requestID":"92de8ad0-6a0a-11ef-9b41-2363e6623fc8","responseTime":20,"status":200,"url":"/devices/0843a492-3bd4-4f20-b579-e9f4dec005a7/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"92ddee90-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/0843a492-3bd4-4f20-b579-e9f4dec005a7? 200 25ms","method":"GET","requestID":"92ddee90-6a0a-11ef-9b41-2363e6623fc8","responseTime":25,"status":200,"url":"/devices/0843a492-3bd4-4f20-b579-e9f4dec005a7?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"92de63c0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8ff9d235-3891-4586-a242-72ee869a9134#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8ff9d235-3891-4586-a242-72ee869a9134","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"ff8e341c-613f-4464-91d7-732c016ba881","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377911.8275366} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"73169291-e17c-4177-a6e8-8b7cf4d5f9d9","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377911.8278139} device-1 | {"level":"info","message":"GET /devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2? 200 24ms","method":"GET","requestID":"92de63c0-6a0a-11ef-9b41-2363e6623fc8","responseTime":24,"status":200,"url":"/devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"92e20d40-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"db5ccd6f23e3cb780f123bcf6e716dee","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"92e25b60-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":512,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c57b7e8-a3d5-4a18-a368-ae1621f65de2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"52be7945-4dba-4570-aa03-b1025685912e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377911.833249} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":512,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.798514,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":513,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:31Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/8ff9d235-3891-4586-a242-72ee869a9134","user":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"db5ccd6f23e3cb780f123bcf6e716dee"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"92e20d40-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2","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":"03/Sep/2024:15:38:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1295","request_time":"0.155","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"db5ccd6f23e3cb780f123bcf6e716dee"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"92e20d40-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"POST /experiments? 201 150ms","method":"POST","requestID":"db5ccd6f23e3cb780f123bcf6e716dee","responseTime":150,"status":201,"url":"/experiments?"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0843a492-3bd4-4f20-b579-e9f4dec005a7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c27923f4-155f-455e-86a4-680fd122201d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377911.8366215} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":513,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.940653,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0843a492-3bd4-4f20-b579-e9f4dec005a7","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"92e25b60-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0843a492-3bd4-4f20-b579-e9f4dec005a7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"92e25b60-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"92e20d40-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2/signaling 200 13ms","method":"POST","requestID":"92e20d40-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxMX0.cmNLYc-wF2zgmU0RF0_3FYVLOIGnXh6927yyHP1XL9s","level":"info","message":"auth send jwt","requestID":"f2ebc5eff7edf2d83e3435c631810a72"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"92e25b60-6a0a-11ef-9b41-2363e6623fc8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f2ebc5eff7edf2d83e3435c631810a72","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"POST /devices/0843a492-3bd4-4f20-b579-e9f4dec005a7/signaling 200 13ms","method":"POST","requestID":"92e25b60-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/devices/0843a492-3bd4-4f20-b579-e9f4dec005a7/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f2ebc5eff7edf2d83e3435c631810a72"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"92e4a550-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":514,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":514,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.707022,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":515,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0843a492-3bd4-4f20-b579-e9f4dec005a7","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"f2ebc5eff7edf2d83e3435c631810a72","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/0843a492-3bd4-4f20-b579-e9f4dec005a7","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377911,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxMX0.cmNLYc-wF2zgmU0RF0_3FYVLOIGnXh6927yyHP1XL9s"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f2ebc5eff7edf2d83e3435c631810a72","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c57b7e8-a3d5-4a18-a368-ae1621f65de2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d9cdbd3d-4684-47bd-8045-b42cebdcb5e6","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377911.8499293} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":515,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.86864,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"92e4a550-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"92e4a550-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0843a492-3bd4-4f20-b579-e9f4dec005a7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0843a492-3bd4-4f20-b579-e9f4dec005a7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:31.079880710Z"}]},"request_id":"2cb9a271-cb8f-486d-b586-80686c535bed","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377911.8536613} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"92e4a550-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f2ebc5eff7edf2d83e3435c631810a72","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2/signaling 200 9ms","method":"POST","requestID":"92e4a550-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8ff9d235-3891-4586-a242-72ee869a9134"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"db5ccd6f23e3cb780f123bcf6e716dee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8ff9d235-3891-4586-a242-72ee869a9134"},"level":"info","message":"Building connection plan","requestID":"db5ccd6f23e3cb780f123bcf6e716dee"} 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":"d429ee9d-304b-46f1-9b26-dba7f9fb6e7f"},{"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":"eb723a6a-86d2-462c-bf13-881d84a51348"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"7dd0381e-e8f5-4fd3-9942-d303763f6ba8"}]},"level":"info","message":"Built pairwise service configurations","requestID":"db5ccd6f23e3cb780f123bcf6e716dee"} 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/7c57b7e8-a3d5-4a18-a368-ae1621f65de2"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/0843a492-3bd4-4f20-b579-e9f4dec005a7"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"db5ccd6f23e3cb780f123bcf6e716dee"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"92e67a10-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f2ebc5eff7edf2d83e3435c631810a72"} gateway-1 | {"time_local":"03/Sep/2024:15:38:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0843a492-3bd4-4f20-b579-e9f4dec005a7? 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":"f2ebc5eff7edf2d83e3435c631810a72"} device-1 | {"level":"info","message":"GET /devices/0843a492-3bd4-4f20-b579-e9f4dec005a7? 200 15ms","method":"GET","requestID":"f2ebc5eff7edf2d83e3435c631810a72","responseTime":15,"status":200,"url":"/devices/0843a492-3bd4-4f20-b579-e9f4dec005a7?"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":516,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":516,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.694884,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"92e67a10-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377911,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxMX0.cmNLYc-wF2zgmU0RF0_3FYVLOIGnXh6927yyHP1XL9s"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"92e67a10-6a0a-11ef-9b41-2363e6623fc8","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxMX0.cmNLYc-wF2zgmU0RF0_3FYVLOIGnXh6927yyHP1XL9s","level":"info","message":"auth send jwt","requestID":"aaa476ac9f4d483dc563e18914a69543"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"aaa476ac9f4d483dc563e18914a69543","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"aaa476ac9f4d483dc563e18914a69543"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":517,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":517,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.741359,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"aaa476ac9f4d483dc563e18914a69543","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377911,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxMX0.cmNLYc-wF2zgmU0RF0_3FYVLOIGnXh6927yyHP1XL9s"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"aaa476ac9f4d483dc563e18914a69543","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","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%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"7eefe8f6-d9fd-44b0-8233-ba6d7767c190","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377911.8729498} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"687a284e-a0ed-40ab-839a-4cef04138e57","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377911.873137} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"92e67a10-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c57b7e8-a3d5-4a18-a368-ae1621f65de2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c57b7e8-a3d5-4a18-a368-ae1621f65de2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:31.132078608Z"}]},"request_id":"759ff1b5-f9ff-4667-8ddc-52b91dfe61b8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377911.8742306} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"aaa476ac9f4d483dc563e18914a69543","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"aaa476ac9f4d483dc563e18914a69543"} device-1 | {"level":"info","message":"GET /devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2? 200 14ms","method":"GET","requestID":"aaa476ac9f4d483dc563e18914a69543","responseTime":14,"status":200,"url":"/devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2?"} gateway-1 | {"time_local":"03/Sep/2024:15:38:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2? 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":"aaa476ac9f4d483dc563e18914a69543"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"92e67a10-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"92e67a10-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/6a0f6fc3-ce0c-426c-b83a-de9c875ed333'","requestID":"92e67a10-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/6a0f6fc3-ce0c-426c-b83a-de9c875ed333'","requestID":"92e67a10-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"92e67a10-6a0a-11ef-9b41-2363e6623fc8"} 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":"92e67a10-6a0a-11ef-9b41-2363e6623fc8","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":"92e67a10-6a0a-11ef-9b41-2363e6623fc8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8ff9d235-3891-4586-a242-72ee869a9134"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"db5ccd6f23e3cb780f123bcf6e716dee"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"92efa1d0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":518,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0843a492-3bd4-4f20-b579-e9f4dec005a7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cb1b744e-4e30-4d39-abbc-89a4c37f0097","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377911.9231565} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":518,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.486866,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0843a492-3bd4-4f20-b579-e9f4dec005a7","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"92efa1d0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0843a492-3bd4-4f20-b579-e9f4dec005a7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"92efa1d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"92efa1d0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/0843a492-3bd4-4f20-b579-e9f4dec005a7/signaling 200 10ms","method":"POST","requestID":"92efa1d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/devices/0843a492-3bd4-4f20-b579-e9f4dec005a7/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"92f19da0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":519,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c57b7e8-a3d5-4a18-a368-ae1621f65de2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f75a4213-54b1-4bbc-95d5-c45367f327b9","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377911.9345567} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":519,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.929701,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"92f19da0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"92f19da0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"92f19da0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2/signaling 200 9ms","method":"POST","requestID":"92f19da0-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2/signaling"} device-1 | {"device":"0843a492-3bd4-4f20-b579-e9f4dec005a7","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":"6a0f6fc3-ce0c-426c-b83a-de9c875ed333","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"7c57b7e8-a3d5-4a18-a368-ae1621f65de2","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":"6a0f6fc3-ce0c-426c-b83a-de9c875ed333","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"7c57b7e8-a3d5-4a18-a368-ae1621f65de2","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":"7c57b7e8-a3d5-4a18-a368-ae1621f65de2","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":"7c57b7e8-a3d5-4a18-a368-ae1621f65de2","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":"7c57b7e8-a3d5-4a18-a368-ae1621f65de2","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/6a0f6fc3-ce0c-426c-b83a-de9c875ed333' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6a0f6fc3-ce0c-426c-b83a-de9c875ed333","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"136bb8fc84d2a29c9c4f1438d20c6960","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"136bb8fc84d2a29c9c4f1438d20c6960","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":"connecting","url":"http://localhost/devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/0843a492-3bd4-4f20-b579-e9f4dec005a7"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/6a0f6fc3-ce0c-426c-b83a-de9c875ed333"}}},"level":"info","message":"received a callback","requestID":"136bb8fc84d2a29c9c4f1438d20c6960"} device-1 | {"device":"0843a492-3bd4-4f20-b579-e9f4dec005a7","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":"0843a492-3bd4-4f20-b579-e9f4dec005a7","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 5ms","method":"POST","requestID":"136bb8fc84d2a29c9c4f1438d20c6960","responseTime":6,"status":200,"url":"/callbacks/experiment"} device-1 | {"device":"0843a492-3bd4-4f20-b579-e9f4dec005a7","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"}} gateway-1 | {"time_local":"03/Sep/2024:15:38:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"136bb8fc84d2a29c9c4f1438d20c6960"} device-1 | {"data":{"peerconnection":"6a0f6fc3-ce0c-426c-b83a-de9c875ed333","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"7c57b7e8-a3d5-4a18-a368-ae1621f65de2","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":"0843a492-3bd4-4f20-b579-e9f4dec005a7","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":"7c57b7e8-a3d5-4a18-a368-ae1621f65de2","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":"0843a492-3bd4-4f20-b579-e9f4dec005a7","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":"6a0f6fc3-ce0c-426c-b83a-de9c875ed333","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/6a0f6fc3-ce0c-426c-b83a-de9c875ed333' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6a0f6fc3-ce0c-426c-b83a-de9c875ed333","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"79b74a38d356206da686f596aea181b9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"79b74a38d356206da686f596aea181b9","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/7c57b7e8-a3d5-4a18-a368-ae1621f65de2"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/0843a492-3bd4-4f20-b579-e9f4dec005a7"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/6a0f6fc3-ce0c-426c-b83a-de9c875ed333"}}},"level":"info","message":"received a callback","requestID":"79b74a38d356206da686f596aea181b9"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"942d51f0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":520,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:34Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6a0f6fc3-ce0c-426c-b83a-de9c875ed333","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b50971fc-7798-44a4-a6a9-fdba40fee126","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377914.0060642} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":520,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.291674,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/6a0f6fc3-ce0c-426c-b83a-de9c875ed333","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"942d51f0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/6a0f6fc3-ce0c-426c-b83a-de9c875ed333","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":"942d51f0-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"942d51f0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /peerconnections/6a0f6fc3-ce0c-426c-b83a-de9c875ed333 200 11ms","method":"GET","requestID":"942d51f0-6a0a-11ef-9b41-2363e6623fc8","responseTime":11,"status":200,"url":"/peerconnections/6a0f6fc3-ce0c-426c-b83a-de9c875ed333"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 39ms","method":"POST","requestID":"79b74a38d356206da686f596aea181b9","responseTime":39,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.043","http_referrer":"","http_user_agent":"node-fetch","requestID":"79b74a38d356206da686f596aea181b9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"94328210-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":521,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:34Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c57b7e8-a3d5-4a18-a368-ae1621f65de2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"56342dda-3f1d-4dcf-8ea2-73f3f98322cc","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377914.040697} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":521,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.845667,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"94328210-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"94328210-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"94328210-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2/signaling 200 15ms","method":"POST","requestID":"94328210-6a0a-11ef-9b41-2363e6623fc8","responseTime":15,"status":200,"url":"/devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"94354130-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":522,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:34Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0843a492-3bd4-4f20-b579-e9f4dec005a7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"34b6299b-4ed7-436c-87db-3995e19ffdca","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377914.0562696} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":522,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.659977,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0843a492-3bd4-4f20-b579-e9f4dec005a7","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"94354130-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0843a492-3bd4-4f20-b579-e9f4dec005a7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"94354130-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"94354130-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/0843a492-3bd4-4f20-b579-e9f4dec005a7/signaling 200 12ms","method":"POST","requestID":"94354130-6a0a-11ef-9b41-2363e6623fc8","responseTime":12,"status":200,"url":"/devices/0843a492-3bd4-4f20-b579-e9f4dec005a7/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxNH0.hMfIA846mVpCykjYbV5OcrV5XsSCq0uyJ1n_Djk8VG8","level":"info","message":"auth send jwt","requestID":"e2f13f8016582b44cf955231d68e6df3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e2f13f8016582b44cf955231d68e6df3","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/8ff9d235-3891-4586-a242-72ee869a9134","requestID":"e2f13f8016582b44cf955231d68e6df3"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":523,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:34Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":523,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.405159,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8ff9d235-3891-4586-a242-72ee869a9134","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"e2f13f8016582b44cf955231d68e6df3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/8ff9d235-3891-4586-a242-72ee869a9134","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377914,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxNH0.hMfIA846mVpCykjYbV5OcrV5XsSCq0uyJ1n_Djk8VG8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e2f13f8016582b44cf955231d68e6df3","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/8ff9d235-3891-4586-a242-72ee869a9134","requestID":"e2f13f8016582b44cf955231d68e6df3"} gateway-1 | {"time_local":"03/Sep/2024:15:38:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/8ff9d235-3891-4586-a242-72ee869a9134 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":"e2f13f8016582b44cf955231d68e6df3"} experiment-1 | {"level":"info","message":"GET /experiments/8ff9d235-3891-4586-a242-72ee869a9134 200 16ms","method":"GET","requestID":"e2f13f8016582b44cf955231d68e6df3","responseTime":16,"status":200,"url":"/experiments/8ff9d235-3891-4586-a242-72ee869a9134"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxNH0.hMfIA846mVpCykjYbV5OcrV5XsSCq0uyJ1n_Djk8VG8","level":"info","message":"auth send jwt","requestID":"a569673dad275888c3cabc1c80b346b1"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a569673dad275888c3cabc1c80b346b1","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/8ff9d235-3891-4586-a242-72ee869a9134","requestID":"a569673dad275888c3cabc1c80b346b1"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":524,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:34Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":524,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.207793,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:34Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8ff9d235-3891-4586-a242-72ee869a9134","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a569673dad275888c3cabc1c80b346b1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/8ff9d235-3891-4586-a242-72ee869a9134","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377914,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxNH0.hMfIA846mVpCykjYbV5OcrV5XsSCq0uyJ1n_Djk8VG8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a569673dad275888c3cabc1c80b346b1","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8ff9d235-3891-4586-a242-72ee869a9134"},"level":"info","message":"Attempting to finish experiment","requestID":"a569673dad275888c3cabc1c80b346b1"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"9440d9f0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":525,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:34Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":525,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.247627,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:34Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/6a0f6fc3-ce0c-426c-b83a-de9c875ed333","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9440d9f0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:http://localhost/peerconnections/6a0f6fc3-ce0c-426c-b83a-de9c875ed333","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377914,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxNH0.hMfIA846mVpCykjYbV5OcrV5XsSCq0uyJ1n_Djk8VG8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9440d9f0-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"device":"7c57b7e8-a3d5-4a18-a368-ae1621f65de2","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":"7c57b7e8-a3d5-4a18-a368-ae1621f65de2","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":"7c57b7e8-a3d5-4a18-a368-ae1621f65de2","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":"0843a492-3bd4-4f20-b579-e9f4dec005a7","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":"0843a492-3bd4-4f20-b579-e9f4dec005a7","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":"0843a492-3bd4-4f20-b579-e9f4dec005a7","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/6a0f6fc3-ce0c-426c-b83a-de9c875ed333' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/6a0f6fc3-ce0c-426c-b83a-de9c875ed333' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6a0f6fc3-ce0c-426c-b83a-de9c875ed333","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6a0f6fc3-ce0c-426c-b83a-de9c875ed333': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6a0f6fc3-ce0c-426c-b83a-de9c875ed333","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"124b0b39-cb01-4e03-b30e-bd053ace6505","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377914.1584268} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ddae92bb-6e45-4386-9638-8db232786116","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377914.1589627} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9daf1c8c956146576531b988b3b900de","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"9daf1c8c956146576531b988b3b900de","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"9440d9f0-6a0a-11ef-9b41-2363e6623fc8","responseTime":12,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d974022898a134c6cb7fb9e4c1726884","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"closed","url":"http://localhost/devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/0843a492-3bd4-4f20-b579-e9f4dec005a7"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/6a0f6fc3-ce0c-426c-b83a-de9c875ed333"}}},"level":"info","message":"received a callback","requestID":"9daf1c8c956146576531b988b3b900de"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d974022898a134c6cb7fb9e4c1726884","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":"closed","url":"http://localhost/devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/0843a492-3bd4-4f20-b579-e9f4dec005a7"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/6a0f6fc3-ce0c-426c-b83a-de9c875ed333"}}},"level":"info","message":"received a callback","requestID":"d974022898a134c6cb7fb9e4c1726884"} device-1 | {"data":{"peerconnection":"6a0f6fc3-ce0c-426c-b83a-de9c875ed333","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"9440d9f0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"DELETE /peerconnections/6a0f6fc3-ce0c-426c-b83a-de9c875ed333 204 56ms","method":"DELETE","requestID":"9440d9f0-6a0a-11ef-9b41-2363e6623fc8","responseTime":56,"status":204,"url":"/peerconnections/6a0f6fc3-ce0c-426c-b83a-de9c875ed333"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8ff9d235-3891-4586-a242-72ee869a9134"},"level":"info","message":"Successfully finished experiment","requestID":"a569673dad275888c3cabc1c80b346b1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"944d3600-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":526,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:34Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c57b7e8-a3d5-4a18-a368-ae1621f65de2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"17a422bd-0648-4b0d-8fe3-7972d8831c83","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377914.2150848} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":526,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.933915,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"944d3600-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2","object_type":"device","rebac_allow":false,"scope_allow":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":"944d3600-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8ff9d235-3891-4586-a242-72ee869a9134': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8ff9d235-3891-4586-a242-72ee869a9134","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"dbcd8978-d5b7-4c8a-95b3-c0e4830bf1bb","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377914.2224026} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"944d3600-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9d19588b-4453-493f-b303-22f41960c179","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377914.2226884} device-1 | {"level":"info","message":"POST /devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2/signaling 200 15ms","method":"POST","requestID":"944d3600-6a0a-11ef-9b41-2363e6623fc8","responseTime":15,"status":200,"url":"/devices/7c57b7e8-a3d5-4a18-a368-ae1621f65de2/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"a569673dad275888c3cabc1c80b346b1","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"944ff520-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":527,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:34Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0843a492-3bd4-4f20-b579-e9f4dec005a7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8ee708bf-b9f5-416d-8cf6-d8eab1cf73e2","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377914.2331502} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":527,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.373791,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0843a492-3bd4-4f20-b579-e9f4dec005a7","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"944ff520-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0843a492-3bd4-4f20-b579-e9f4dec005a7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"944ff520-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"944ff520-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/0843a492-3bd4-4f20-b579-e9f4dec005a7/signaling 200 12ms","method":"POST","requestID":"944ff520-6a0a-11ef-9b41-2363e6623fc8","responseTime":12,"status":200,"url":"/devices/0843a492-3bd4-4f20-b579-e9f4dec005a7/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/8ff9d235-3891-4586-a242-72ee869a9134","requestID":"a569673dad275888c3cabc1c80b346b1"} gateway-1 | {"time_local":"03/Sep/2024:15:38:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/8ff9d235-3891-4586-a242-72ee869a9134 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":"a569673dad275888c3cabc1c80b346b1"} gateway-1 | {"time_local":"03/Sep/2024:15:38:34 +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.654","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"21c3aeb14ee28f05dfbb8abbedcb1e9d"} gateway-1 | {"time_local":"03/Sep/2024:15:38:34 +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.667","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"40ed9b1babcdef0cbab57465226cebce"} experiment-1 | {"level":"info","message":"DELETE /experiments/8ff9d235-3891-4586-a242-72ee869a9134 204 181ms","method":"DELETE","requestID":"a569673dad275888c3cabc1c80b346b1","responseTime":181,"status":204,"url":"/experiments/8ff9d235-3891-4586-a242-72ee869a9134"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 132ms","method":"POST","requestID":"9daf1c8c956146576531b988b3b900de","responseTime":132,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.138","http_referrer":"","http_user_agent":"node-fetch","requestID":"9daf1c8c956146576531b988b3b900de"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 131ms","method":"POST","requestID":"d974022898a134c6cb7fb9e4c1726884","responseTime":131,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxNH0.hMfIA846mVpCykjYbV5OcrV5XsSCq0uyJ1n_Djk8VG8","level":"info","message":"auth send jwt","requestID":"23f41c7837a5316aea71fa21ec2fd676"} gateway-1 | {"time_local":"03/Sep/2024:15:38:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.138","http_referrer":"","http_user_agent":"node-fetch","requestID":"d974022898a134c6cb7fb9e4c1726884"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"23f41c7837a5316aea71fa21ec2fd676","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/7c57b7e8-a3d5-4a18-a368-ae1621f65de2' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"23f41c7837a5316aea71fa21ec2fd676"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":528,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:34Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":528,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.548105,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:34Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"23f41c7837a5316aea71fa21ec2fd676","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377914,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxNH0.hMfIA846mVpCykjYbV5OcrV5XsSCq0uyJ1n_Djk8VG8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"23f41c7837a5316aea71fa21ec2fd676","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/0843a492-3bd4-4f20-b579-e9f4dec005a7' 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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54491c97-1f4a-4351-9656-cdf09a965919","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c99fefd7-3c28-4880-adb1-83ccbec104ee","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377914.3234982} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"23f41c7837a5316aea71fa21ec2fd676","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"478cbd1f-3496-46e8-ac5a-782c2b513386","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377914.3302586} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"23f41c7837a5316aea71fa21ec2fd676","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54491c97-1f4a-4351-9656-cdf09a965919","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"dd5ffa90-4e16-4718-a273-f290f9782336","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377914.3411005} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b60e71c6-d934-4869-9195-3c2e342fe42a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377914.3414314} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"23f41c7837a5316aea71fa21ec2fd676","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54491c97-1f4a-4351-9656-cdf09a965919","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54491c97-1f4a-4351-9656-cdf09a965919","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:34.341063807Z"}]},"request_id":"a20cacf9-8f4b-44b9-bb35-177628b65ca0","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377914.3471737} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"23f41c7837a5316aea71fa21ec2fd676","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"23f41c7837a5316aea71fa21ec2fd676"} gateway-1 | {"time_local":"03/Sep/2024:15:38: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.057","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"23f41c7837a5316aea71fa21ec2fd676"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"23f41c7837a5316aea71fa21ec2fd676","responseTime":49,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxNH0.hMfIA846mVpCykjYbV5OcrV5XsSCq0uyJ1n_Djk8VG8","level":"info","message":"auth send jwt","requestID":"83647ca3e21c14d755beee35d3526994"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"83647ca3e21c14d755beee35d3526994","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"83647ca3e21c14d755beee35d3526994"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":529,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:34Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":529,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.949086,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:34Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"83647ca3e21c14d755beee35d3526994","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377914,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxNH0.hMfIA846mVpCykjYbV5OcrV5XsSCq0uyJ1n_Djk8VG8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"83647ca3e21c14d755beee35d3526994","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8d0c2d3-e2cf-44c9-a3e0-29127889e02c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"1329b8e1-8318-4b28-bd45-71c93e327355","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377914.3721557} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"83647ca3e21c14d755beee35d3526994","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e78e32ad-125b-4a17-a777-088328f09691","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377914.3773208} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"83647ca3e21c14d755beee35d3526994","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8d0c2d3-e2cf-44c9-a3e0-29127889e02c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"bf47f8ce-6975-4aba-ab8f-3bae69f6595e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377914.3940592} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9b79382c-38c8-43e5-890d-d528a4f91ff8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377914.3943546} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"83647ca3e21c14d755beee35d3526994","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8d0c2d3-e2cf-44c9-a3e0-29127889e02c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8d0c2d3-e2cf-44c9-a3e0-29127889e02c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:34.394033893Z"}]},"request_id":"1792a8e1-43de-4364-a325-2bde84135cfb","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377914.3992035} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"83647ca3e21c14d755beee35d3526994","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"83647ca3e21c14d755beee35d3526994"} gateway-1 | {"time_local":"03/Sep/2024:15:38: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.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"83647ca3e21c14d755beee35d3526994"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"83647ca3e21c14d755beee35d3526994","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxNH0.hMfIA846mVpCykjYbV5OcrV5XsSCq0uyJ1n_Djk8VG8","level":"info","message":"auth send jwt","requestID":"42409ac0b86ff9e153ff79f346efa329"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"42409ac0b86ff9e153ff79f346efa329","responseTime":7,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxNH0.hMfIA846mVpCykjYbV5OcrV5XsSCq0uyJ1n_Djk8VG8","level":"info","message":"auth send jwt","requestID":"b6cc012b6562df621b910fd8fef2de7a"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"b6cc012b6562df621b910fd8fef2de7a","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"42409ac0b86ff9e153ff79f346efa329"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b6cc012b6562df621b910fd8fef2de7a"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":530,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:34Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":530,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.631605,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:34Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":531,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:34Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"42409ac0b86ff9e153ff79f346efa329","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377914,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxNH0.hMfIA846mVpCykjYbV5OcrV5XsSCq0uyJ1n_Djk8VG8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"42409ac0b86ff9e153ff79f346efa329","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":531,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.636464,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:34Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/54491c97-1f4a-4351-9656-cdf09a965919","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"b6cc012b6562df621b910fd8fef2de7a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/54491c97-1f4a-4351-9656-cdf09a965919","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377914,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxNH0.hMfIA846mVpCykjYbV5OcrV5XsSCq0uyJ1n_Djk8VG8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b6cc012b6562df621b910fd8fef2de7a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54491c97-1f4a-4351-9656-cdf09a965919","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54491c97-1f4a-4351-9656-cdf09a965919","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:34.341063807Z"}]},"request_id":"8b299c22-c153-40a4-b7b5-3ca89324d24e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377914.85511} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b6cc012b6562df621b910fd8fef2de7a","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8d0c2d3-e2cf-44c9-a3e0-29127889e02c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8d0c2d3-e2cf-44c9-a3e0-29127889e02c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:34.394033893Z"}]},"request_id":"1d49b286-0f59-4ff0-a58e-a4e51b2236d1","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377914.8556406} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"42409ac0b86ff9e153ff79f346efa329","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c3e4bbe4-7689-4483-b24e-b113d4d42a0e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377914.85965} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"b6cc012b6562df621b910fd8fef2de7a","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2a1ee24e-9a15-48d1-8329-51376a6a50d1","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377914.8613696} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"42409ac0b86ff9e153ff79f346efa329","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8d0c2d3-e2cf-44c9-a3e0-29127889e02c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8d0c2d3-e2cf-44c9-a3e0-29127889e02c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:34.394033893Z"}]},"request_id":"004120b7-ad6a-4971-8423-de1b8a1eb385","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377914.8650851} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"42409ac0b86ff9e153ff79f346efa329","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"42409ac0b86ff9e153ff79f346efa329"} gateway-1 | {"time_local":"03/Sep/2024:15:38:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.031","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"42409ac0b86ff9e153ff79f346efa329"} device-1 | {"level":"info","message":"PATCH /devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c 200 22ms","method":"PATCH","requestID":"42409ac0b86ff9e153ff79f346efa329","responseTime":22,"status":200,"url":"/devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxNH0.hMfIA846mVpCykjYbV5OcrV5XsSCq0uyJ1n_Djk8VG8","level":"info","message":"auth send jwt","requestID":"affcb06db1111a38164aca16732df54b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"affcb06db1111a38164aca16732df54b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"affcb06db1111a38164aca16732df54b"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54491c97-1f4a-4351-9656-cdf09a965919","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54491c97-1f4a-4351-9656-cdf09a965919","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:34.341063807Z"}]},"request_id":"a55ebdd5-677e-4531-af26-7194ef91cfe1","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377914.8751733} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b6cc012b6562df621b910fd8fef2de7a","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":532,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:34Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":532,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.899118,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:34Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b6cc012b6562df621b910fd8fef2de7a"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"affcb06db1111a38164aca16732df54b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377914,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxNH0.hMfIA846mVpCykjYbV5OcrV5XsSCq0uyJ1n_Djk8VG8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"affcb06db1111a38164aca16732df54b","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"03/Sep/2024:15:38:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/54491c97-1f4a-4351-9656-cdf09a965919 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.042","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"b6cc012b6562df621b910fd8fef2de7a"} device-1 | {"level":"info","message":"PATCH /devices/54491c97-1f4a-4351-9656-cdf09a965919 200 31ms","method":"PATCH","requestID":"b6cc012b6562df621b910fd8fef2de7a","responseTime":31,"status":200,"url":"/devices/54491c97-1f4a-4351-9656-cdf09a965919"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxNH0.hMfIA846mVpCykjYbV5OcrV5XsSCq0uyJ1n_Djk8VG8","level":"info","message":"auth send jwt","requestID":"cd65ce41d5ce3dbadc020bb0106b98a9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"cd65ce41d5ce3dbadc020bb0106b98a9","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"cd65ce41d5ce3dbadc020bb0106b98a9"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":533,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:34Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":533,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.749564,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:34Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/54491c97-1f4a-4351-9656-cdf09a965919","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"cd65ce41d5ce3dbadc020bb0106b98a9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/54491c97-1f4a-4351-9656-cdf09a965919","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377914,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxNH0.hMfIA846mVpCykjYbV5OcrV5XsSCq0uyJ1n_Djk8VG8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"cd65ce41d5ce3dbadc020bb0106b98a9","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"affcb06db1111a38164aca16732df54b"} gateway-1 | {"time_local":"03/Sep/2024:15:38:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"affcb06db1111a38164aca16732df54b"} device-1 | {"level":"info","message":"POST /devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c/websocket 200 18ms","method":"POST","requestID":"affcb06db1111a38164aca16732df54b","responseTime":18,"status":200,"url":"/devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"cd65ce41d5ce3dbadc020bb0106b98a9"} device-1 | {"level":"info","message":"POST /devices/54491c97-1f4a-4351-9656-cdf09a965919/websocket 200 19ms","method":"POST","requestID":"cd65ce41d5ce3dbadc020bb0106b98a9","responseTime":19,"status":200,"url":"/devices/54491c97-1f4a-4351-9656-cdf09a965919/websocket"} gateway-1 | {"time_local":"03/Sep/2024:15:38:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/54491c97-1f4a-4351-9656-cdf09a965919/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"cd65ce41d5ce3dbadc020bb0106b98a9"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/54491c97-1f4a-4351-9656-cdf09a965919' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxNH0.hMfIA846mVpCykjYbV5OcrV5XsSCq0uyJ1n_Djk8VG8","level":"info","message":"auth send jwt","requestID":"a65bba40f0d5ea6551335e0f59352b2d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a65bba40f0d5ea6551335e0f59352b2d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a65bba40f0d5ea6551335e0f59352b2d","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":534,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:34Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":534,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.691602,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/54491c97-1f4a-4351-9656-cdf09a965919","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a65bba40f0d5ea6551335e0f59352b2d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/54491c97-1f4a-4351-9656-cdf09a965919","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377914,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxNH0.hMfIA846mVpCykjYbV5OcrV5XsSCq0uyJ1n_Djk8VG8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a65bba40f0d5ea6551335e0f59352b2d","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54491c97-1f4a-4351-9656-cdf09a965919","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54491c97-1f4a-4351-9656-cdf09a965919","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:34.341063807Z"}]},"request_id":"a9263882-d4c2-4a04-8dbe-fd6e31b2be82","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377914.9384391} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a65bba40f0d5ea6551335e0f59352b2d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a65bba40f0d5ea6551335e0f59352b2d"} device-1 | {"level":"info","message":"GET /devices/54491c97-1f4a-4351-9656-cdf09a965919? 200 13ms","method":"GET","requestID":"a65bba40f0d5ea6551335e0f59352b2d","responseTime":13,"status":200,"url":"/devices/54491c97-1f4a-4351-9656-cdf09a965919?"} gateway-1 | {"time_local":"03/Sep/2024:15:38:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/54491c97-1f4a-4351-9656-cdf09a965919? 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":"a65bba40f0d5ea6551335e0f59352b2d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxNH0.hMfIA846mVpCykjYbV5OcrV5XsSCq0uyJ1n_Djk8VG8","level":"info","message":"auth send jwt","requestID":"cb6b886d6993b4b5f10be516e52771fc"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"cb6b886d6993b4b5f10be516e52771fc","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cb6b886d6993b4b5f10be516e52771fc"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":535,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:34Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":535,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.138886,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"cb6b886d6993b4b5f10be516e52771fc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377914,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxNH0.hMfIA846mVpCykjYbV5OcrV5XsSCq0uyJ1n_Djk8VG8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cb6b886d6993b4b5f10be516e52771fc","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8d0c2d3-e2cf-44c9-a3e0-29127889e02c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8d0c2d3-e2cf-44c9-a3e0-29127889e02c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:34.394033893Z"}]},"request_id":"458520c2-41c6-4724-8a5e-8c7b9fd5bca4","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377914.9557977} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cb6b886d6993b4b5f10be516e52771fc","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cb6b886d6993b4b5f10be516e52771fc"} gateway-1 | {"time_local":"03/Sep/2024:15:38:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c? 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":"cb6b886d6993b4b5f10be516e52771fc"} device-1 | {"level":"info","message":"GET /devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c? 200 12ms","method":"GET","requestID":"cb6b886d6993b4b5f10be516e52771fc","responseTime":12,"status":200,"url":"/devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxNH0.hMfIA846mVpCykjYbV5OcrV5XsSCq0uyJ1n_Djk8VG8","level":"info","message":"auth send jwt","requestID":"fbb93e11b7ab03a72475d1d64665b879"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"fbb93e11b7ab03a72475d1d64665b879","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"fbb93e11b7ab03a72475d1d64665b879"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":536,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:34Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":536,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.799496,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:34Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"fbb93e11b7ab03a72475d1d64665b879","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377914,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxNH0.hMfIA846mVpCykjYbV5OcrV5XsSCq0uyJ1n_Djk8VG8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fbb93e11b7ab03a72475d1d64665b879","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3168efa5-371f-4a51-8ad0-7a5da89f90cf"},"level":"info","message":"Attempting to run experiment","requestID":"fbb93e11b7ab03a72475d1d64665b879"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3168efa5-371f-4a51-8ad0-7a5da89f90cf"},"level":"info","message":"Attempting to book experiment","requestID":"fbb93e11b7ab03a72475d1d64665b879"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3168efa5-371f-4a51-8ad0-7a5da89f90cf"},"level":"info","message":"Successfully booked experiment","requestID":"fbb93e11b7ab03a72475d1d64665b879"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"94c65da0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"94c684b0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":537,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:35Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":537,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.634821,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:35Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":538,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/54491c97-1f4a-4351-9656-cdf09a965919","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"94c65da0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/54491c97-1f4a-4351-9656-cdf09a965919","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377914,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxNH0.hMfIA846mVpCykjYbV5OcrV5XsSCq0uyJ1n_Djk8VG8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"94c65da0-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":538,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.747516,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"94c684b0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377914,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxNH0.hMfIA846mVpCykjYbV5OcrV5XsSCq0uyJ1n_Djk8VG8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"94c684b0-6a0a-11ef-9b41-2363e6623fc8","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54491c97-1f4a-4351-9656-cdf09a965919","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54491c97-1f4a-4351-9656-cdf09a965919","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:34.341063807Z"}]},"request_id":"b5b908c1-4d07-4984-a501-eaf895d70001","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377915.0100725} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"94c65da0-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8d0c2d3-e2cf-44c9-a3e0-29127889e02c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8d0c2d3-e2cf-44c9-a3e0-29127889e02c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:34.394033893Z"}]},"request_id":"65857c9b-d252-4bb3-a9bc-97be80bfec34","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377915.0108612} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"94c684b0-6a0a-11ef-9b41-2363e6623fc8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"94c65da0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/54491c97-1f4a-4351-9656-cdf09a965919? 200 13ms","method":"GET","requestID":"94c65da0-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/devices/54491c97-1f4a-4351-9656-cdf09a965919?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"94c684b0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c? 200 13ms","method":"GET","requestID":"94c684b0-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3168efa5-371f-4a51-8ad0-7a5da89f90cf"},"level":"info","message":"Setting up experiment","requestID":"fbb93e11b7ab03a72475d1d64665b879"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3168efa5-371f-4a51-8ad0-7a5da89f90cf"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"fbb93e11b7ab03a72475d1d64665b879"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3168efa5-371f-4a51-8ad0-7a5da89f90cf"},"level":"info","message":"Successfully locked booking for experiment","requestID":"fbb93e11b7ab03a72475d1d64665b879"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3168efa5-371f-4a51-8ad0-7a5da89f90cf"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"fbb93e11b7ab03a72475d1d64665b879"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3168efa5-371f-4a51-8ad0-7a5da89f90cf"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"fbb93e11b7ab03a72475d1d64665b879"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3168efa5-371f-4a51-8ad0-7a5da89f90cf"},"level":"info","message":"Attempting to update booking for experiment","requestID":"fbb93e11b7ab03a72475d1d64665b879"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3168efa5-371f-4a51-8ad0-7a5da89f90cf"},"level":"info","message":"Successfully updated booking for experiment","requestID":"fbb93e11b7ab03a72475d1d64665b879"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3168efa5-371f-4a51-8ad0-7a5da89f90cf"},"level":"info","message":"Successfully set up experiment","requestID":"fbb93e11b7ab03a72475d1d64665b879"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"94d0e4f0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"94d13310-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":539,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:35Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"94d15a20-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":539,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.698536,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:35Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":540,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:35Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3168efa5-371f-4a51-8ad0-7a5da89f90cf"},"level":"info","message":"Successfully running experiment","requestID":"fbb93e11b7ab03a72475d1d64665b879"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/54491c97-1f4a-4351-9656-cdf09a965919","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"94d0e4f0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/54491c97-1f4a-4351-9656-cdf09a965919","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377914,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxNH0.hMfIA846mVpCykjYbV5OcrV5XsSCq0uyJ1n_Djk8VG8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"94d0e4f0-6a0a-11ef-9b41-2363e6623fc8","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":540,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.831421,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"94d13310-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377914,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxNH0.hMfIA846mVpCykjYbV5OcrV5XsSCq0uyJ1n_Djk8VG8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"94d13310-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":541,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:35Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54491c97-1f4a-4351-9656-cdf09a965919","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f5eab454-606c-4cc2-973b-7ac83509109b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377915.0811136} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54491c97-1f4a-4351-9656-cdf09a965919","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54491c97-1f4a-4351-9656-cdf09a965919","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:34.341063807Z"}]},"request_id":"4887cc0d-6eae-40ee-883e-04b71739663a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377915.0816274} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"94d0e4f0-6a0a-11ef-9b41-2363e6623fc8","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":541,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.227127,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/54491c97-1f4a-4351-9656-cdf09a965919","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"94d15a20-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/54491c97-1f4a-4351-9656-cdf09a965919","object_type":"device","rebac_allow":false,"scope_allow":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":"94d15a20-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8d0c2d3-e2cf-44c9-a3e0-29127889e02c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8d0c2d3-e2cf-44c9-a3e0-29127889e02c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:34.394033893Z"}]},"request_id":"35e02e8d-dc3a-4de1-8b5e-35992010442f","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377915.0828285} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"94d13310-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"94d0e4f0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/54491c97-1f4a-4351-9656-cdf09a965919? 200 20ms","method":"GET","requestID":"94d0e4f0-6a0a-11ef-9b41-2363e6623fc8","responseTime":20,"status":200,"url":"/devices/54491c97-1f4a-4351-9656-cdf09a965919?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"94d15a20-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/54491c97-1f4a-4351-9656-cdf09a965919/signaling 200 18ms","method":"POST","requestID":"94d15a20-6a0a-11ef-9b41-2363e6623fc8","responseTime":18,"status":200,"url":"/devices/54491c97-1f4a-4351-9656-cdf09a965919/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"94d13310-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c? 200 20ms","method":"GET","requestID":"94d13310-6a0a-11ef-9b41-2363e6623fc8","responseTime":20,"status":200,"url":"/devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"94d46760-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"94d4b580-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3168efa5-371f-4a51-8ad0-7a5da89f90cf#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3168efa5-371f-4a51-8ad0-7a5da89f90cf","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"f962720e-3d89-487c-aca9-05e2ac391c7e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377915.0962293} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d33c51c0-b44a-4773-a8f5-eb06efd9074e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377915.0964255} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"fbb93e11b7ab03a72475d1d64665b879","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":542,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:35Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8d0c2d3-e2cf-44c9-a3e0-29127889e02c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d74fce2b-0540-4bd2-b024-95f3f3a69385","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377915.0986183} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":542,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.335788,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:35Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":543,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"94d46760-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"94d46760-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54491c97-1f4a-4351-9656-cdf09a965919","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e1f7414b-5275-47a7-ab5f-f1f24e47c761","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377915.101928} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":543,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.849646,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/54491c97-1f4a-4351-9656-cdf09a965919","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"94d4b580-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/54491c97-1f4a-4351-9656-cdf09a965919","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":"94d46760-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"94d4b580-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c/signaling 200 10ms","method":"POST","requestID":"94d46760-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/3168efa5-371f-4a51-8ad0-7a5da89f90cf","user":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"fbb93e11b7ab03a72475d1d64665b879"} gateway-1 | {"time_local":"03/Sep/2024:15:38:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1295","request_time":"0.144","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fbb93e11b7ab03a72475d1d64665b879"} experiment-1 | {"level":"info","message":"POST /experiments? 201 141ms","method":"POST","requestID":"fbb93e11b7ab03a72475d1d64665b879","responseTime":141,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"94d4b580-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/54491c97-1f4a-4351-9656-cdf09a965919/signaling 200 11ms","method":"POST","requestID":"94d4b580-6a0a-11ef-9b41-2363e6623fc8","responseTime":11,"status":200,"url":"/devices/54491c97-1f4a-4351-9656-cdf09a965919/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"94d68a40-6a0a-11ef-9b41-2363e6623fc8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxNX0.OH7g4DauKuTcGklAP6XYBFp-Ugs0MRz9216YxymFGqw","level":"info","message":"auth send jwt","requestID":"a00c7158ebf6b055198f265d0332f3b8"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"a00c7158ebf6b055198f265d0332f3b8","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a00c7158ebf6b055198f265d0332f3b8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":544,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:35Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":545,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:35Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":545,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.765795,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/54491c97-1f4a-4351-9656-cdf09a965919","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a00c7158ebf6b055198f265d0332f3b8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/54491c97-1f4a-4351-9656-cdf09a965919","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377915,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxNX0.OH7g4DauKuTcGklAP6XYBFp-Ugs0MRz9216YxymFGqw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a00c7158ebf6b055198f265d0332f3b8","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8d0c2d3-e2cf-44c9-a3e0-29127889e02c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"14a39bef-6eaa-4af1-aa1c-5e8a35e82621","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377915.1124892} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":544,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.20851,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"94d68a40-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"94d68a40-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54491c97-1f4a-4351-9656-cdf09a965919","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54491c97-1f4a-4351-9656-cdf09a965919","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:34.341063807Z"}]},"request_id":"68e1c3f8-e4ec-47bb-9ba3-8812a8e029a3","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377915.116686} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"94d68a40-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a00c7158ebf6b055198f265d0332f3b8","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c/signaling 200 9ms","method":"POST","requestID":"94d68a40-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3168efa5-371f-4a51-8ad0-7a5da89f90cf"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"fbb93e11b7ab03a72475d1d64665b879"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3168efa5-371f-4a51-8ad0-7a5da89f90cf"},"level":"info","message":"Building connection plan","requestID":"fbb93e11b7ab03a72475d1d64665b879"} 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":"2c428872-2f3a-434c-a946-1a19e21a6f38"},{"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":"cc797acc-537e-4b05-929d-d4471e669ee9"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"7ab29aa2-3523-40e3-a40e-5229685247c2"}]},"level":"info","message":"Built pairwise service configurations","requestID":"fbb93e11b7ab03a72475d1d64665b879"} 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/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/54491c97-1f4a-4351-9656-cdf09a965919"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"fbb93e11b7ab03a72475d1d64665b879"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"94d85f00-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a00c7158ebf6b055198f265d0332f3b8"} gateway-1 | {"time_local":"03/Sep/2024:15:38:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/54491c97-1f4a-4351-9656-cdf09a965919? 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":"a00c7158ebf6b055198f265d0332f3b8"} device-1 | {"level":"info","message":"GET /devices/54491c97-1f4a-4351-9656-cdf09a965919? 200 12ms","method":"GET","requestID":"a00c7158ebf6b055198f265d0332f3b8","responseTime":12,"status":200,"url":"/devices/54491c97-1f4a-4351-9656-cdf09a965919?"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":546,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:35Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":546,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.86738,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:35Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"94d85f00-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377914,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxNH0.hMfIA846mVpCykjYbV5OcrV5XsSCq0uyJ1n_Djk8VG8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"94d85f00-6a0a-11ef-9b41-2363e6623fc8","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxNX0.OH7g4DauKuTcGklAP6XYBFp-Ugs0MRz9216YxymFGqw","level":"info","message":"auth send jwt","requestID":"b62b1a336a587fda0681a0f172a06c61"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"b62b1a336a587fda0681a0f172a06c61","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b62b1a336a587fda0681a0f172a06c61"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":547,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:35Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":547,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.603113,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"b62b1a336a587fda0681a0f172a06c61","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377915,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxNX0.OH7g4DauKuTcGklAP6XYBFp-Ugs0MRz9216YxymFGqw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b62b1a336a587fda0681a0f172a06c61","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","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%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"278dc186-fc07-4da4-b259-8ce769189529","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377915.1343749} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a90a8beb-c29a-4137-8e71-8d49cf8e2718","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377915.1345172} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"94d85f00-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8d0c2d3-e2cf-44c9-a3e0-29127889e02c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8d0c2d3-e2cf-44c9-a3e0-29127889e02c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:34.394033893Z"}]},"request_id":"f4c5bad5-cd49-4ee5-9682-171a862c5bf5","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377915.1380107} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b62b1a336a587fda0681a0f172a06c61","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"94d85f00-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"94d85f00-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/c855bd38-be10-42f9-9dd9-84d078ed4cd4'","requestID":"94d85f00-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/c855bd38-be10-42f9-9dd9-84d078ed4cd4'","requestID":"94d85f00-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"94d85f00-6a0a-11ef-9b41-2363e6623fc8"} 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":"94d85f00-6a0a-11ef-9b41-2363e6623fc8","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":"b62b1a336a587fda0681a0f172a06c61"} gateway-1 | {"time_local":"03/Sep/2024:15:38:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c? 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":"b62b1a336a587fda0681a0f172a06c61"} device-1 | {"level":"info","message":"GET /devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c? 200 19ms","method":"GET","requestID":"b62b1a336a587fda0681a0f172a06c61","responseTime":19,"status":200,"url":"/devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"94d85f00-6a0a-11ef-9b41-2363e6623fc8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3168efa5-371f-4a51-8ad0-7a5da89f90cf"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"fbb93e11b7ab03a72475d1d64665b879"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"94e15fb0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":548,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:35Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54491c97-1f4a-4351-9656-cdf09a965919","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c81cecc5-dfd2-443e-a9e5-e9cf3629252d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377915.1830196} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":548,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.368431,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/54491c97-1f4a-4351-9656-cdf09a965919","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"94e15fb0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/54491c97-1f4a-4351-9656-cdf09a965919","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"94e15fb0-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"94e15fb0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/54491c97-1f4a-4351-9656-cdf09a965919/signaling 200 8ms","method":"POST","requestID":"94e15fb0-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/devices/54491c97-1f4a-4351-9656-cdf09a965919/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"94e2e650-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":549,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:35Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8d0c2d3-e2cf-44c9-a3e0-29127889e02c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d8d2ff92-34be-490d-beea-c6f02aa49bde","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377915.1930795} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":549,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.377537,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"94e2e650-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"94e2e650-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"94e2e650-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c/signaling 200 8ms","method":"POST","requestID":"94e2e650-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c/signaling"} device-1 | {"device":"54491c97-1f4a-4351-9656-cdf09a965919","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":"c855bd38-be10-42f9-9dd9-84d078ed4cd4","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"b8d0c2d3-e2cf-44c9-a3e0-29127889e02c","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":"c855bd38-be10-42f9-9dd9-84d078ed4cd4","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"b8d0c2d3-e2cf-44c9-a3e0-29127889e02c","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":"b8d0c2d3-e2cf-44c9-a3e0-29127889e02c","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":"b8d0c2d3-e2cf-44c9-a3e0-29127889e02c","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":"b8d0c2d3-e2cf-44c9-a3e0-29127889e02c","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/c855bd38-be10-42f9-9dd9-84d078ed4cd4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c855bd38-be10-42f9-9dd9-84d078ed4cd4","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d8f74413451ab0d36e8796e21bcbf935","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"d8f74413451ab0d36e8796e21bcbf935","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":"connecting","url":"http://localhost/devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/54491c97-1f4a-4351-9656-cdf09a965919"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/c855bd38-be10-42f9-9dd9-84d078ed4cd4"}}},"level":"info","message":"received a callback","requestID":"d8f74413451ab0d36e8796e21bcbf935"} device-1 | {"device":"54491c97-1f4a-4351-9656-cdf09a965919","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":"54491c97-1f4a-4351-9656-cdf09a965919","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":"54491c97-1f4a-4351-9656-cdf09a965919","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 8ms","method":"POST","requestID":"d8f74413451ab0d36e8796e21bcbf935","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"d8f74413451ab0d36e8796e21bcbf935"} device-1 | {"data":{"peerconnection":"c855bd38-be10-42f9-9dd9-84d078ed4cd4","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"b8d0c2d3-e2cf-44c9-a3e0-29127889e02c","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":"54491c97-1f4a-4351-9656-cdf09a965919","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":"54491c97-1f4a-4351-9656-cdf09a965919","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":"b8d0c2d3-e2cf-44c9-a3e0-29127889e02c","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":"c855bd38-be10-42f9-9dd9-84d078ed4cd4","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/c855bd38-be10-42f9-9dd9-84d078ed4cd4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c855bd38-be10-42f9-9dd9-84d078ed4cd4","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2048d69286e15fe7d432b73e4d6f1f99","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"2048d69286e15fe7d432b73e4d6f1f99","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/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/54491c97-1f4a-4351-9656-cdf09a965919"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/c855bd38-be10-42f9-9dd9-84d078ed4cd4"}}},"level":"info","message":"received a callback","requestID":"2048d69286e15fe7d432b73e4d6f1f99"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"962180d0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":550,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:37Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc855bd38-be10-42f9-9dd9-84d078ed4cd4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"da4b1841-772d-4e17-8cee-43c5e1938dcc","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377917.283284} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":550,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.491552,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c855bd38-be10-42f9-9dd9-84d078ed4cd4","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"962180d0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/c855bd38-be10-42f9-9dd9-84d078ed4cd4","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":"962180d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"962180d0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /peerconnections/c855bd38-be10-42f9-9dd9-84d078ed4cd4 200 11ms","method":"GET","requestID":"962180d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":11,"status":200,"url":"/peerconnections/c855bd38-be10-42f9-9dd9-84d078ed4cd4"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 44ms","method":"POST","requestID":"2048d69286e15fe7d432b73e4d6f1f99","responseTime":44,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38: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.049","http_referrer":"","http_user_agent":"node-fetch","requestID":"2048d69286e15fe7d432b73e4d6f1f99"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"96274d30-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":551,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:37Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8d0c2d3-e2cf-44c9-a3e0-29127889e02c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f6c7c235-f4bf-46ca-b700-0f5a13af0297","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377917.3209405} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":551,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.466348,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"96274d30-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"96274d30-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"96274d30-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c/signaling 200 12ms","method":"POST","requestID":"96274d30-6a0a-11ef-9b41-2363e6623fc8","responseTime":12,"status":200,"url":"/devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"96299720-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":552,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:37Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54491c97-1f4a-4351-9656-cdf09a965919","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a43dcad8-3bfc-4b43-a2ad-c6e548a18286","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377917.336524} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":552,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.432494,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/54491c97-1f4a-4351-9656-cdf09a965919","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"96299720-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/54491c97-1f4a-4351-9656-cdf09a965919","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"96299720-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"96299720-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/54491c97-1f4a-4351-9656-cdf09a965919/signaling 200 13ms","method":"POST","requestID":"96299720-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/devices/54491c97-1f4a-4351-9656-cdf09a965919/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxN30.g3_8QcFR0REUT8oiqRzxddGWYfXIUHSpWnbaYbzmNXE","level":"info","message":"auth send jwt","requestID":"b95d7abedc8de40701b372f49884476c"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"b95d7abedc8de40701b372f49884476c","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/3168efa5-371f-4a51-8ad0-7a5da89f90cf","requestID":"b95d7abedc8de40701b372f49884476c"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":553,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:37Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":553,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.167738,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/3168efa5-371f-4a51-8ad0-7a5da89f90cf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"b95d7abedc8de40701b372f49884476c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/3168efa5-371f-4a51-8ad0-7a5da89f90cf","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377917,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxN30.g3_8QcFR0REUT8oiqRzxddGWYfXIUHSpWnbaYbzmNXE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b95d7abedc8de40701b372f49884476c","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/3168efa5-371f-4a51-8ad0-7a5da89f90cf","requestID":"b95d7abedc8de40701b372f49884476c"} gateway-1 | {"time_local":"03/Sep/2024:15:38:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/3168efa5-371f-4a51-8ad0-7a5da89f90cf HTTP/1.1","status": "200","body_bytes_sent":"1368","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b95d7abedc8de40701b372f49884476c"} experiment-1 | {"level":"info","message":"GET /experiments/3168efa5-371f-4a51-8ad0-7a5da89f90cf 200 15ms","method":"GET","requestID":"b95d7abedc8de40701b372f49884476c","responseTime":15,"status":200,"url":"/experiments/3168efa5-371f-4a51-8ad0-7a5da89f90cf"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxN30.g3_8QcFR0REUT8oiqRzxddGWYfXIUHSpWnbaYbzmNXE","level":"info","message":"auth send jwt","requestID":"00c098bec747d16f3e1cb1b27bd199bc"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"00c098bec747d16f3e1cb1b27bd199bc","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/3168efa5-371f-4a51-8ad0-7a5da89f90cf","requestID":"00c098bec747d16f3e1cb1b27bd199bc"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":554,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:37Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":554,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.141883,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:37Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/3168efa5-371f-4a51-8ad0-7a5da89f90cf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"00c098bec747d16f3e1cb1b27bd199bc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/3168efa5-371f-4a51-8ad0-7a5da89f90cf","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377917,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxN30.g3_8QcFR0REUT8oiqRzxddGWYfXIUHSpWnbaYbzmNXE"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"00c098bec747d16f3e1cb1b27bd199bc","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3168efa5-371f-4a51-8ad0-7a5da89f90cf"},"level":"info","message":"Attempting to finish experiment","requestID":"00c098bec747d16f3e1cb1b27bd199bc"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"96352fe0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":555,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:37Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":555,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.136174,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:37Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c855bd38-be10-42f9-9dd9-84d078ed4cd4","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"96352fe0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:http://localhost/peerconnections/c855bd38-be10-42f9-9dd9-84d078ed4cd4","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377917,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxN30.g3_8QcFR0REUT8oiqRzxddGWYfXIUHSpWnbaYbzmNXE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"96352fe0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"b8d0c2d3-e2cf-44c9-a3e0-29127889e02c","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":"b8d0c2d3-e2cf-44c9-a3e0-29127889e02c","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":"b8d0c2d3-e2cf-44c9-a3e0-29127889e02c","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":"54491c97-1f4a-4351-9656-cdf09a965919","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":"54491c97-1f4a-4351-9656-cdf09a965919","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":"54491c97-1f4a-4351-9656-cdf09a965919","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/c855bd38-be10-42f9-9dd9-84d078ed4cd4' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/c855bd38-be10-42f9-9dd9-84d078ed4cd4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c855bd38-be10-42f9-9dd9-84d078ed4cd4","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc855bd38-be10-42f9-9dd9-84d078ed4cd4': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc855bd38-be10-42f9-9dd9-84d078ed4cd4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"b7e134c3-e4bd-4929-9611-86d2c3a44455","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377917.4323514} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"997c99f7-3da9-4345-8068-1f644f408076","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377917.4329605} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"abfb93bd15e7906d00749302aeeee4b9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"abfb93bd15e7906d00749302aeeee4b9","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6c42d0a800a5b55f51830080b97d418d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"closed","url":"http://localhost/devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/54491c97-1f4a-4351-9656-cdf09a965919"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/c855bd38-be10-42f9-9dd9-84d078ed4cd4"}}},"level":"info","message":"received a callback","requestID":"abfb93bd15e7906d00749302aeeee4b9"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6c42d0a800a5b55f51830080b97d418d","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":"closed","url":"http://localhost/devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","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/54491c97-1f4a-4351-9656-cdf09a965919"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/c855bd38-be10-42f9-9dd9-84d078ed4cd4"}}},"level":"info","message":"received a callback","requestID":"6c42d0a800a5b55f51830080b97d418d"} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"96352fe0-6a0a-11ef-9b41-2363e6623fc8","responseTime":16,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"c855bd38-be10-42f9-9dd9-84d078ed4cd4","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"96352fe0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"DELETE /peerconnections/c855bd38-be10-42f9-9dd9-84d078ed4cd4 204 49ms","method":"DELETE","requestID":"96352fe0-6a0a-11ef-9b41-2363e6623fc8","responseTime":50,"status":204,"url":"/peerconnections/c855bd38-be10-42f9-9dd9-84d078ed4cd4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3168efa5-371f-4a51-8ad0-7a5da89f90cf"},"level":"info","message":"Successfully finished experiment","requestID":"00c098bec747d16f3e1cb1b27bd199bc"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"963f1af0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":556,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:37Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8d0c2d3-e2cf-44c9-a3e0-29127889e02c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0675e82c-502c-4dc3-90bf-653c8d463886","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377917.4774325} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":556,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.376504,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"963f1af0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"963f1af0-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"963f1af0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3168efa5-371f-4a51-8ad0-7a5da89f90cf': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3168efa5-371f-4a51-8ad0-7a5da89f90cf","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"1cab4a5a-8e00-48c1-8121-6086dfb120a9","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377917.4819043} device-1 | {"level":"info","message":"POST /devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c/signaling 200 11ms","method":"POST","requestID":"963f1af0-6a0a-11ef-9b41-2363e6623fc8","responseTime":11,"status":200,"url":"/devices/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"964116c0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"23f5dc14-386e-4e96-bfd1-162bf03428c9","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377917.484259} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"00c098bec747d16f3e1cb1b27bd199bc","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":557,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:37Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54491c97-1f4a-4351-9656-cdf09a965919","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"01c22066-33c5-4653-a772-1b058c124662","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377917.4908607} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":557,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.916363,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/54491c97-1f4a-4351-9656-cdf09a965919","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"964116c0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/54491c97-1f4a-4351-9656-cdf09a965919","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"964116c0-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"964116c0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/54491c97-1f4a-4351-9656-cdf09a965919/signaling 200 12ms","method":"POST","requestID":"964116c0-6a0a-11ef-9b41-2363e6623fc8","responseTime":12,"status":200,"url":"/devices/54491c97-1f4a-4351-9656-cdf09a965919/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/3168efa5-371f-4a51-8ad0-7a5da89f90cf","requestID":"00c098bec747d16f3e1cb1b27bd199bc"} gateway-1 | {"time_local":"03/Sep/2024:15:38:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/3168efa5-371f-4a51-8ad0-7a5da89f90cf 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":"00c098bec747d16f3e1cb1b27bd199bc"} gateway-1 | {"time_local":"03/Sep/2024:15:38:37 +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.651","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"d5a41d4243ad2b942eff96c8178a7889"} gateway-1 | {"time_local":"03/Sep/2024:15:38:37 +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.662","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"e1b307fef32f7557e9b52305efe3b314"} experiment-1 | {"level":"info","message":"DELETE /experiments/3168efa5-371f-4a51-8ad0-7a5da89f90cf 204 168ms","method":"DELETE","requestID":"00c098bec747d16f3e1cb1b27bd199bc","responseTime":168,"status":204,"url":"/experiments/3168efa5-371f-4a51-8ad0-7a5da89f90cf"} gateway-1 | {"time_local":"03/Sep/2024:15:38: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.128","http_referrer":"","http_user_agent":"node-fetch","requestID":"abfb93bd15e7906d00749302aeeee4b9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 124ms","method":"POST","requestID":"abfb93bd15e7906d00749302aeeee4b9","responseTime":124,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 123ms","method":"POST","requestID":"6c42d0a800a5b55f51830080b97d418d","responseTime":123,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38: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.128","http_referrer":"","http_user_agent":"node-fetch","requestID":"6c42d0a800a5b55f51830080b97d418d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxN30.g3_8QcFR0REUT8oiqRzxddGWYfXIUHSpWnbaYbzmNXE","level":"info","message":"auth send jwt","requestID":"18e585f7a5459dc3d505271d9eb9e0f5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"18e585f7a5459dc3d505271d9eb9e0f5","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/b8d0c2d3-e2cf-44c9-a3e0-29127889e02c' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"18e585f7a5459dc3d505271d9eb9e0f5"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":558,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:37Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":558,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.881346,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:37Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"18e585f7a5459dc3d505271d9eb9e0f5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377917,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxN30.g3_8QcFR0REUT8oiqRzxddGWYfXIUHSpWnbaYbzmNXE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"18e585f7a5459dc3d505271d9eb9e0f5","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/54491c97-1f4a-4351-9656-cdf09a965919' 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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fccbf3429-3de9-4454-90fc-26157cf8181f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"caf6ab42-b354-4f83-8343-761a21c5c26b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377917.5846546} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"18e585f7a5459dc3d505271d9eb9e0f5","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"852435df-3169-48d6-bbe9-90080f0fd384","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377917.590508} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"18e585f7a5459dc3d505271d9eb9e0f5","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fccbf3429-3de9-4454-90fc-26157cf8181f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"ab29a2de-f80c-433c-829d-23d7adfe8056","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377917.6015756} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d4058589-5505-4b07-b14c-729d366e1364","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377917.6016774} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"18e585f7a5459dc3d505271d9eb9e0f5","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fccbf3429-3de9-4454-90fc-26157cf8181f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fccbf3429-3de9-4454-90fc-26157cf8181f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:37.601544244Z"}]},"request_id":"8dbc3fc9-f1ba-4c9e-bdbf-c94c030bf7e2","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377917.6063507} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"18e585f7a5459dc3d505271d9eb9e0f5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"18e585f7a5459dc3d505271d9eb9e0f5"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"18e585f7a5459dc3d505271d9eb9e0f5","responseTime":43,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"03/Sep/2024:15:38:37 +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":"18e585f7a5459dc3d505271d9eb9e0f5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxN30.g3_8QcFR0REUT8oiqRzxddGWYfXIUHSpWnbaYbzmNXE","level":"info","message":"auth send jwt","requestID":"8bee61ae09c559a50b36a53a402462e5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8bee61ae09c559a50b36a53a402462e5","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"8bee61ae09c559a50b36a53a402462e5"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":559,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:37Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":559,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.777604,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:37Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8bee61ae09c559a50b36a53a402462e5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377917,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxN30.g3_8QcFR0REUT8oiqRzxddGWYfXIUHSpWnbaYbzmNXE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8bee61ae09c559a50b36a53a402462e5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5096dcef-c7a0-4174-ab8a-6d7e756f2485","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0a398173-2f71-434f-9d75-9562da91d7ed","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377917.6361368} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8bee61ae09c559a50b36a53a402462e5","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"267dc387-1872-48cd-bb0f-39a2f925b7fd","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377917.6417513} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"8bee61ae09c559a50b36a53a402462e5","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5096dcef-c7a0-4174-ab8a-6d7e756f2485","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"36648ff7-3a87-41e0-8020-f48f5ca20cd8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377917.6529193} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"020e355a-4695-4e84-ad38-65a354d7f56a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377917.6529806} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"8bee61ae09c559a50b36a53a402462e5","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5096dcef-c7a0-4174-ab8a-6d7e756f2485","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5096dcef-c7a0-4174-ab8a-6d7e756f2485","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:37.652890405Z"}]},"request_id":"baafce4b-c0af-468e-9b6c-46a55104bdf8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377917.6573918} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8bee61ae09c559a50b36a53a402462e5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"8bee61ae09c559a50b36a53a402462e5"} gateway-1 | {"time_local":"03/Sep/2024:15:38:37 +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":"8bee61ae09c559a50b36a53a402462e5"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"8bee61ae09c559a50b36a53a402462e5","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2cb80bb35b2562dd880aaf314f949647","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"2cb80bb35b2562dd880aaf314f949647","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"03/Sep/2024:15:38:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485/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":"2cb80bb35b2562dd880aaf314f949647"} device-1 | {"level":"info","message":"OPTIONS /devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485/websocket 200 1ms","method":"OPTIONS","requestID":"2cb80bb35b2562dd880aaf314f949647","responseTime":1,"status":200,"url":"/devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxOX0.teqHU1_5OGTjVor1nW8k6TO2BO070w0DToMwDhKH23s","level":"info","message":"auth send jwt","requestID":"a49e233d31234ccc02b4009ba320f4d5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a49e233d31234ccc02b4009ba320f4d5","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a49e233d31234ccc02b4009ba320f4d5"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"496c2c0e8a374aa0ea28f1b3bfff9410","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"496c2c0e8a374aa0ea28f1b3bfff9410","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":560,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:39Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":560,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.255051,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:39Z"} gateway-1 | {"time_local":"03/Sep/2024:15:38:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ccbf3429-3de9-4454-90fc-26157cf8181f/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":"496c2c0e8a374aa0ea28f1b3bfff9410"} device-1 | {"level":"info","message":"OPTIONS /devices/ccbf3429-3de9-4454-90fc-26157cf8181f/websocket 200 1ms","method":"OPTIONS","requestID":"496c2c0e8a374aa0ea28f1b3bfff9410","responseTime":1,"status":200,"url":"/devices/ccbf3429-3de9-4454-90fc-26157cf8181f/websocket"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a49e233d31234ccc02b4009ba320f4d5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377919,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxOX0.teqHU1_5OGTjVor1nW8k6TO2BO070w0DToMwDhKH23s"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a49e233d31234ccc02b4009ba320f4d5","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxOX0.teqHU1_5OGTjVor1nW8k6TO2BO070w0DToMwDhKH23s","level":"info","message":"auth send jwt","requestID":"04822b26c8e15bf163ed5daad5d2117c"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"04822b26c8e15bf163ed5daad5d2117c","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"04822b26c8e15bf163ed5daad5d2117c"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":561,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:39Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":561,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.266688,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:39Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ccbf3429-3de9-4454-90fc-26157cf8181f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"04822b26c8e15bf163ed5daad5d2117c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/ccbf3429-3de9-4454-90fc-26157cf8181f","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377919,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxOX0.teqHU1_5OGTjVor1nW8k6TO2BO070w0DToMwDhKH23s"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"04822b26c8e15bf163ed5daad5d2117c","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a49e233d31234ccc02b4009ba320f4d5"} gateway-1 | {"time_local":"03/Sep/2024:15:38:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485/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":"a49e233d31234ccc02b4009ba320f4d5"} device-1 | {"level":"info","message":"POST /devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485/websocket 200 26ms","method":"POST","requestID":"a49e233d31234ccc02b4009ba320f4d5","responseTime":26,"status":200,"url":"/devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"04822b26c8e15bf163ed5daad5d2117c"} gateway-1 | {"time_local":"03/Sep/2024:15:38:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ccbf3429-3de9-4454-90fc-26157cf8181f/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":"04822b26c8e15bf163ed5daad5d2117c"} device-1 | {"level":"info","message":"POST /devices/ccbf3429-3de9-4454-90fc-26157cf8181f/websocket 200 19ms","method":"POST","requestID":"04822b26c8e15bf163ed5daad5d2117c","responseTime":19,"status":200,"url":"/devices/ccbf3429-3de9-4454-90fc-26157cf8181f/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ccbf3429-3de9-4454-90fc-26157cf8181f' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxOX0.teqHU1_5OGTjVor1nW8k6TO2BO070w0DToMwDhKH23s","level":"info","message":"auth send jwt","requestID":"0f8aba647abd5b0bf0492834bbb8e066"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0f8aba647abd5b0bf0492834bbb8e066","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0f8aba647abd5b0bf0492834bbb8e066"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":562,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:39Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":562,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.304549,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ccbf3429-3de9-4454-90fc-26157cf8181f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"0f8aba647abd5b0bf0492834bbb8e066","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/ccbf3429-3de9-4454-90fc-26157cf8181f","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377919,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxOX0.teqHU1_5OGTjVor1nW8k6TO2BO070w0DToMwDhKH23s"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0f8aba647abd5b0bf0492834bbb8e066","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fccbf3429-3de9-4454-90fc-26157cf8181f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fccbf3429-3de9-4454-90fc-26157cf8181f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:37.601544244Z"}]},"request_id":"160a29f4-47bf-43d9-bb1b-02cc4f79441a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377919.6913967} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0f8aba647abd5b0bf0492834bbb8e066","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0f8aba647abd5b0bf0492834bbb8e066"} gateway-1 | {"time_local":"03/Sep/2024:15:38:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ccbf3429-3de9-4454-90fc-26157cf8181f? 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":"0f8aba647abd5b0bf0492834bbb8e066"} device-1 | {"level":"info","message":"GET /devices/ccbf3429-3de9-4454-90fc-26157cf8181f? 200 16ms","method":"GET","requestID":"0f8aba647abd5b0bf0492834bbb8e066","responseTime":16,"status":200,"url":"/devices/ccbf3429-3de9-4454-90fc-26157cf8181f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxOX0.teqHU1_5OGTjVor1nW8k6TO2BO070w0DToMwDhKH23s","level":"info","message":"auth send jwt","requestID":"8f3f0f38aae3c85219f779e08073d430"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8f3f0f38aae3c85219f779e08073d430","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8f3f0f38aae3c85219f779e08073d430"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":563,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:39Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":563,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.447652,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8f3f0f38aae3c85219f779e08073d430","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377919,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxOX0.teqHU1_5OGTjVor1nW8k6TO2BO070w0DToMwDhKH23s"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8f3f0f38aae3c85219f779e08073d430","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5096dcef-c7a0-4174-ab8a-6d7e756f2485","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5096dcef-c7a0-4174-ab8a-6d7e756f2485","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:37.652890405Z"}]},"request_id":"21cf80a5-8191-4ab7-bbcb-4d01c6db9312","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377919.713866} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8f3f0f38aae3c85219f779e08073d430","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8f3f0f38aae3c85219f779e08073d430"} gateway-1 | {"time_local":"03/Sep/2024:15:38:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485? 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":"8f3f0f38aae3c85219f779e08073d430"} device-1 | {"level":"info","message":"GET /devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485? 200 17ms","method":"GET","requestID":"8f3f0f38aae3c85219f779e08073d430","responseTime":17,"status":200,"url":"/devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxOX0.teqHU1_5OGTjVor1nW8k6TO2BO070w0DToMwDhKH23s","level":"info","message":"auth send jwt","requestID":"2f7a6ec5be921ad98334a2da16830a09"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2f7a6ec5be921ad98334a2da16830a09","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"2f7a6ec5be921ad98334a2da16830a09"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":564,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:39Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":564,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.271112,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:39Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"2f7a6ec5be921ad98334a2da16830a09","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377919,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxOX0.teqHU1_5OGTjVor1nW8k6TO2BO070w0DToMwDhKH23s"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2f7a6ec5be921ad98334a2da16830a09","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/da6e8700-4c05-4d19-a2a4-91ada11e73bb"},"level":"info","message":"Attempting to run experiment","requestID":"2f7a6ec5be921ad98334a2da16830a09"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/da6e8700-4c05-4d19-a2a4-91ada11e73bb"},"level":"info","message":"Attempting to book experiment","requestID":"2f7a6ec5be921ad98334a2da16830a09"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/da6e8700-4c05-4d19-a2a4-91ada11e73bb"},"level":"info","message":"Successfully booked experiment","requestID":"2f7a6ec5be921ad98334a2da16830a09"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"979d7270-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"979dc090-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":565,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:39Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":565,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.654199,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:39Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":566,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ccbf3429-3de9-4454-90fc-26157cf8181f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"979d7270-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/ccbf3429-3de9-4454-90fc-26157cf8181f","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377919,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxOX0.teqHU1_5OGTjVor1nW8k6TO2BO070w0DToMwDhKH23s"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"979d7270-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":566,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.138893,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"979dc090-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377919,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxOX0.teqHU1_5OGTjVor1nW8k6TO2BO070w0DToMwDhKH23s"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"979dc090-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fccbf3429-3de9-4454-90fc-26157cf8181f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fccbf3429-3de9-4454-90fc-26157cf8181f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:37.601544244Z"}]},"request_id":"f62dd61f-3806-48f0-893c-7474d076b8bf","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377919.7770822} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"979d7270-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5096dcef-c7a0-4174-ab8a-6d7e756f2485","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5096dcef-c7a0-4174-ab8a-6d7e756f2485","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:37.652890405Z"}]},"request_id":"bc3c6f0f-1b53-4cf0-b998-54857969d36e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377919.7779598} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"979dc090-6a0a-11ef-9b41-2363e6623fc8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"979d7270-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/ccbf3429-3de9-4454-90fc-26157cf8181f? 200 17ms","method":"GET","requestID":"979d7270-6a0a-11ef-9b41-2363e6623fc8","responseTime":17,"status":200,"url":"/devices/ccbf3429-3de9-4454-90fc-26157cf8181f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"979dc090-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485? 200 16ms","method":"GET","requestID":"979dc090-6a0a-11ef-9b41-2363e6623fc8","responseTime":16,"status":200,"url":"/devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/da6e8700-4c05-4d19-a2a4-91ada11e73bb"},"level":"info","message":"Setting up experiment","requestID":"2f7a6ec5be921ad98334a2da16830a09"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/da6e8700-4c05-4d19-a2a4-91ada11e73bb"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"2f7a6ec5be921ad98334a2da16830a09"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/da6e8700-4c05-4d19-a2a4-91ada11e73bb"},"level":"info","message":"Successfully locked booking for experiment","requestID":"2f7a6ec5be921ad98334a2da16830a09"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/da6e8700-4c05-4d19-a2a4-91ada11e73bb"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"2f7a6ec5be921ad98334a2da16830a09"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/da6e8700-4c05-4d19-a2a4-91ada11e73bb"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"2f7a6ec5be921ad98334a2da16830a09"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/da6e8700-4c05-4d19-a2a4-91ada11e73bb"},"level":"info","message":"Attempting to update booking for experiment","requestID":"2f7a6ec5be921ad98334a2da16830a09"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/da6e8700-4c05-4d19-a2a4-91ada11e73bb"},"level":"info","message":"Successfully updated booking for experiment","requestID":"2f7a6ec5be921ad98334a2da16830a09"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/da6e8700-4c05-4d19-a2a4-91ada11e73bb"},"level":"info","message":"Successfully set up experiment","requestID":"2f7a6ec5be921ad98334a2da16830a09"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"97a8bd10-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"97a90b30-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"97a95950-6a0a-11ef-9b41-2363e6623fc8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/da6e8700-4c05-4d19-a2a4-91ada11e73bb"},"level":"info","message":"Successfully running experiment","requestID":"2f7a6ec5be921ad98334a2da16830a09"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":567,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:39Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":567,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.261713,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:39Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":568,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ccbf3429-3de9-4454-90fc-26157cf8181f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"97a8bd10-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/ccbf3429-3de9-4454-90fc-26157cf8181f","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377919,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxOX0.teqHU1_5OGTjVor1nW8k6TO2BO070w0DToMwDhKH23s"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"97a8bd10-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":568,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.982881,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:39Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":569,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"97a90b30-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377919,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxOX0.teqHU1_5OGTjVor1nW8k6TO2BO070w0DToMwDhKH23s"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"97a90b30-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fccbf3429-3de9-4454-90fc-26157cf8181f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ad1c782e-a9c6-405e-80b1-f2e1aeedbad3","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377919.8534853} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":569,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.943459,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ccbf3429-3de9-4454-90fc-26157cf8181f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"97a95950-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ccbf3429-3de9-4454-90fc-26157cf8181f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"97a95950-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"97a95950-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/ccbf3429-3de9-4454-90fc-26157cf8181f/signaling 200 13ms","method":"POST","requestID":"97a95950-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/devices/ccbf3429-3de9-4454-90fc-26157cf8181f/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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fccbf3429-3de9-4454-90fc-26157cf8181f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fccbf3429-3de9-4454-90fc-26157cf8181f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:37.601544244Z"}]},"request_id":"e56f5110-8160-4d58-94e3-3011c45c129b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377919.8579073} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"97a8bd10-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5096dcef-c7a0-4174-ab8a-6d7e756f2485","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5096dcef-c7a0-4174-ab8a-6d7e756f2485","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:37.652890405Z"}]},"request_id":"280826c4-38eb-4c73-87c8-5688bd079f7d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377919.8592048} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"97a90b30-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"97abca50-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":570,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:39Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"97a8bd10-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/ccbf3429-3de9-4454-90fc-26157cf8181f? 200 25ms","method":"GET","requestID":"97a8bd10-6a0a-11ef-9b41-2363e6623fc8","responseTime":25,"status":200,"url":"/devices/ccbf3429-3de9-4454-90fc-26157cf8181f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"97a90b30-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5096dcef-c7a0-4174-ab8a-6d7e756f2485","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"afb7c9a0-3a0a-4b38-8005-e740a4245177","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377919.8667665} device-1 | {"level":"info","message":"GET /devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485? 200 24ms","method":"GET","requestID":"97a90b30-6a0a-11ef-9b41-2363e6623fc8","responseTime":24,"status":200,"url":"/devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485?"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":570,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.070385,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"97abca50-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"97ad02d0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"97abca50-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fda6e8700-4c05-4d19-a2a4-91ada11e73bb#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fda6e8700-4c05-4d19-a2a4-91ada11e73bb","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"dac0e955-9af2-4c21-be3c-11211d85095a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377919.8691447} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cb38d1e7-782b-4c07-b0a6-a05f87c15a06","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377919.869376} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"2f7a6ec5be921ad98334a2da16830a09","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":571,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:39Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"97abca50-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485/signaling 200 11ms","method":"POST","requestID":"97abca50-6a0a-11ef-9b41-2363e6623fc8","responseTime":12,"status":200,"url":"/devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485/signaling"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fccbf3429-3de9-4454-90fc-26157cf8181f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e01a5d76-a939-4756-b727-4496257e1032","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377919.8743944} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":571,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.458216,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ccbf3429-3de9-4454-90fc-26157cf8181f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"97ad02d0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ccbf3429-3de9-4454-90fc-26157cf8181f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"97ad02d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/da6e8700-4c05-4d19-a2a4-91ada11e73bb","user":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"2f7a6ec5be921ad98334a2da16830a09"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"97ad02d0-6a0a-11ef-9b41-2363e6623fc8"} gateway-1 | {"time_local":"03/Sep/2024:15:38:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1211","request_time":"0.157","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2f7a6ec5be921ad98334a2da16830a09"} experiment-1 | {"level":"info","message":"POST /experiments? 201 152ms","method":"POST","requestID":"2f7a6ec5be921ad98334a2da16830a09","responseTime":152,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"POST /devices/ccbf3429-3de9-4454-90fc-26157cf8181f/signaling 200 9ms","method":"POST","requestID":"97ad02d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/devices/ccbf3429-3de9-4454-90fc-26157cf8181f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"97aed790-6a0a-11ef-9b41-2363e6623fc8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxOX0.teqHU1_5OGTjVor1nW8k6TO2BO070w0DToMwDhKH23s","level":"info","message":"auth send jwt","requestID":"a27a3572c099095ae2f013bbe07fc4a2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a27a3572c099095ae2f013bbe07fc4a2","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":572,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:39Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a27a3572c099095ae2f013bbe07fc4a2"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5096dcef-c7a0-4174-ab8a-6d7e756f2485","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a6f8f6fd-03b1-481f-af3c-a922e606b159","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377919.8858736} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":572,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.357129,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:39Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":573,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"97aed790-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"97aed790-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":573,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.612803,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ccbf3429-3de9-4454-90fc-26157cf8181f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a27a3572c099095ae2f013bbe07fc4a2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/ccbf3429-3de9-4454-90fc-26157cf8181f","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377919,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxOX0.teqHU1_5OGTjVor1nW8k6TO2BO070w0DToMwDhKH23s"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a27a3572c099095ae2f013bbe07fc4a2","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"97aed790-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485/signaling 200 11ms","method":"POST","requestID":"97aed790-6a0a-11ef-9b41-2363e6623fc8","responseTime":11,"status":200,"url":"/devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485/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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fccbf3429-3de9-4454-90fc-26157cf8181f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fccbf3429-3de9-4454-90fc-26157cf8181f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:37.601544244Z"}]},"request_id":"50f2740a-adfd-4912-be66-e01b3d9dcd4a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377919.8931031} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/da6e8700-4c05-4d19-a2a4-91ada11e73bb"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"2f7a6ec5be921ad98334a2da16830a09"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/da6e8700-4c05-4d19-a2a4-91ada11e73bb"},"level":"info","message":"Building connection plan","requestID":"2f7a6ec5be921ad98334a2da16830a09"} 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":"4bd7c1c3-cd1c-4ade-b2d2-723e4504ad21"},{"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":"ec4b1279-cd9f-4ef8-967b-ee50d729cb51"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"09ca5dd5-93cd-4eea-89d0-1e75b29f2126"}]},"level":"info","message":"Built pairwise service configurations","requestID":"2f7a6ec5be921ad98334a2da16830a09"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a27a3572c099095ae2f013bbe07fc4a2","responseTime":3,"status":200,"url":"/relations/query"} 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/ccbf3429-3de9-4454-90fc-26157cf8181f"},{"config":{"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/5096dcef-c7a0-4174-ab8a-6d7e756f2485"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"2f7a6ec5be921ad98334a2da16830a09"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"97b12180-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a27a3572c099095ae2f013bbe07fc4a2"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":574,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:39Z"} gateway-1 | {"time_local":"03/Sep/2024:15:38:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ccbf3429-3de9-4454-90fc-26157cf8181f? 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":"a27a3572c099095ae2f013bbe07fc4a2"} device-1 | {"level":"info","message":"GET /devices/ccbf3429-3de9-4454-90fc-26157cf8181f? 200 13ms","method":"GET","requestID":"a27a3572c099095ae2f013bbe07fc4a2","responseTime":13,"status":200,"url":"/devices/ccbf3429-3de9-4454-90fc-26157cf8181f?"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":574,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.890863,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:39Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"97b12180-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377919,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxOX0.teqHU1_5OGTjVor1nW8k6TO2BO070w0DToMwDhKH23s"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"97b12180-6a0a-11ef-9b41-2363e6623fc8","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxOX0.teqHU1_5OGTjVor1nW8k6TO2BO070w0DToMwDhKH23s","level":"info","message":"auth send jwt","requestID":"c71567a5328f256b374d6fa881cec278"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c71567a5328f256b374d6fa881cec278","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c71567a5328f256b374d6fa881cec278"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":575,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:39Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":575,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.970723,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"c71567a5328f256b374d6fa881cec278","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377919,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkxOX0.teqHU1_5OGTjVor1nW8k6TO2BO070w0DToMwDhKH23s"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c71567a5328f256b374d6fa881cec278","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","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%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"4b26be92-2363-494a-95d9-f10959a43f11","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377919.910297} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"69e287a6-1404-4d02-97f8-324a8b557b50","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377919.9106553} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5096dcef-c7a0-4174-ab8a-6d7e756f2485","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5096dcef-c7a0-4174-ab8a-6d7e756f2485","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:37.652890405Z"}]},"request_id":"ff1d85a6-1056-4b92-9386-88572cc4296d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377919.9117143} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"97b12180-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c71567a5328f256b374d6fa881cec278","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c71567a5328f256b374d6fa881cec278"} device-1 | {"level":"info","message":"GET /devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485? 200 13ms","method":"GET","requestID":"c71567a5328f256b374d6fa881cec278","responseTime":13,"status":200,"url":"/devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485?"} gateway-1 | {"time_local":"03/Sep/2024:15:38:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485? 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":"c71567a5328f256b374d6fa881cec278"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"97b12180-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"97b12180-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/89a38314-fcf2-4500-9782-9f934db93cb6'","requestID":"97b12180-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/89a38314-fcf2-4500-9782-9f934db93cb6'","requestID":"97b12180-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"97b12180-6a0a-11ef-9b41-2363e6623fc8"} 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":"97b12180-6a0a-11ef-9b41-2363e6623fc8","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":"97b12180-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/89a38314-fcf2-4500-9782-9f934db93cb6","device":"5096dcef-c7a0-4174-ab8a-6d7e756f2485","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 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/89a38314-fcf2-4500-9782-9f934db93cb6","device":"ccbf3429-3de9-4454-90fc-26157cf8181f","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/da6e8700-4c05-4d19-a2a4-91ada11e73bb"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"2f7a6ec5be921ad98334a2da16830a09"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"97b9d410-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":576,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:39Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fccbf3429-3de9-4454-90fc-26157cf8181f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"22afddca-ae28-4c35-81b1-67875a6a4433","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377919.9575276} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":576,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.998733,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ccbf3429-3de9-4454-90fc-26157cf8181f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"97b9d410-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ccbf3429-3de9-4454-90fc-26157cf8181f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"97b9d410-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"97b9d410-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/ccbf3429-3de9-4454-90fc-26157cf8181f/signaling 200 8ms","method":"POST","requestID":"97b9d410-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/devices/ccbf3429-3de9-4454-90fc-26157cf8181f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"97bb5ab0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":577,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:39Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5096dcef-c7a0-4174-ab8a-6d7e756f2485","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9f96ffe3-2548-49f1-be3c-97b59c386592","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377919.9669483} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":577,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.334374,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"97bb5ab0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"97bb5ab0-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"97bb5ab0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485/signaling 200 7ms","method":"POST","requestID":"97bb5ab0-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485/signaling"} device-1 | {"device":"5096dcef-c7a0-4174-ab8a-6d7e756f2485","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"5096dcef-c7a0-4174-ab8a-6d7e756f2485","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"ccbf3429-3de9-4454-90fc-26157cf8181f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"ccbf3429-3de9-4454-90fc-26157cf8181f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 5895425360334390128 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:jq6V\r\na=ice-pwd:VWSiTskBj5IYlogA72vNJivR\r\na=ice-options:trickle\r\na=fingerprint:sha-256 F1:C1:45:AC:BA:28:38:5A:E2:B5:5F:16:2B:BB:40:FC:11:9B:91:9E:30:3D:85:51:00:7D:5D:A1:93:94:07:EC\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"5096dcef-c7a0-4174-ab8a-6d7e756f2485","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 2367960082919440818 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:A6Ho\r\na=ice-pwd:b1I0zFnAfDYasARwrzQIIipM\r\na=ice-options:trickle\r\na=fingerprint:sha-256 B3:E3:83:D1:AD:A7:E6:98:A1:90:D7:E4:79:7E:09:9A:0D:DA:04:F9:37:9F:B4:4F:F3:28:FE:20:40:B6:84:53\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"ccbf3429-3de9-4454-90fc-26157cf8181f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:2218436660 1 udp 2113937151 14150e46-c3b6-44a5-898e-56906c5b5553.local 60925 typ host generation 0 ufrag A6Ho network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"ccbf3429-3de9-4454-90fc-26157cf8181f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:386992423 1 udp 1677729535 141.24.211.56 60925 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag A6Ho network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"ccbf3429-3de9-4454-90fc-26157cf8181f","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/ccbf3429-3de9-4454-90fc-26157cf8181f'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/ccbf3429-3de9-4454-90fc-26157cf8181f'"} device-1 | {"content":{"candidate":"candidate:2036860329 1 udp 2113937151 131fcd80-0e4c-4364-9cee-29969c7231ad.local 45160 typ host generation 0 ufrag jq6V network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"5096dcef-c7a0-4174-ab8a-6d7e756f2485","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:4249186262 1 udp 1677729535 141.24.211.56 45160 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag jq6V network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"5096dcef-c7a0-4174-ab8a-6d7e756f2485","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/5096dcef-c7a0-4174-ab8a-6d7e756f2485'"} device-1 | {"device":"5096dcef-c7a0-4174-ab8a-6d7e756f2485","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"ccbf3429-3de9-4454-90fc-26157cf8181f","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/89a38314-fcf2-4500-9782-9f934db93cb6' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"89a38314-fcf2-4500-9782-9f934db93cb6","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"ccbf3429-3de9-4454-90fc-26157cf8181f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"5096dcef-c7a0-4174-ab8a-6d7e756f2485","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b3b9f77d2661455eaba5a0c5b2c8df21","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"5096dcef-c7a0-4174-ab8a-6d7e756f2485","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"ccbf3429-3de9-4454-90fc-26157cf8181f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b3b9f77d2661455eaba5a0c5b2c8df21","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":"new","url":"http://localhost/devices/ccbf3429-3de9-4454-90fc-26157cf8181f"},{"config":{"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/5096dcef-c7a0-4174-ab8a-6d7e756f2485"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/89a38314-fcf2-4500-9782-9f934db93cb6"}}},"level":"info","message":"received a callback","requestID":"b3b9f77d2661455eaba5a0c5b2c8df21"} device-1 | {"device":"ccbf3429-3de9-4454-90fc-26157cf8181f","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"b3b9f77d2661455eaba5a0c5b2c8df21","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"b3b9f77d2661455eaba5a0c5b2c8df21"} device-1 | {"data":{"peerconnection":"89a38314-fcf2-4500-9782-9f934db93cb6","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"89a38314-fcf2-4500-9782-9f934db93cb6","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/89a38314-fcf2-4500-9782-9f934db93cb6' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"89a38314-fcf2-4500-9782-9f934db93cb6","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cd0efc2bdda17208a00317d4817390f8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"cd0efc2bdda17208a00317d4817390f8","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/ccbf3429-3de9-4454-90fc-26157cf8181f"},{"config":{"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/5096dcef-c7a0-4174-ab8a-6d7e756f2485"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/89a38314-fcf2-4500-9782-9f934db93cb6"}}},"level":"info","message":"received a callback","requestID":"cd0efc2bdda17208a00317d4817390f8"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"97cac400-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":578,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:40Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F89a38314-fcf2-4500-9782-9f934db93cb6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"114fe2e3-0acf-4d07-89d7-cfaae2c18418","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377920.0690663} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":578,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.919218,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/89a38314-fcf2-4500-9782-9f934db93cb6","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"97cac400-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/89a38314-fcf2-4500-9782-9f934db93cb6","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":"97cac400-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"97cac400-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /peerconnections/89a38314-fcf2-4500-9782-9f934db93cb6 200 10ms","method":"GET","requestID":"97cac400-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/peerconnections/89a38314-fcf2-4500-9782-9f934db93cb6"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 38ms","method":"POST","requestID":"cd0efc2bdda17208a00317d4817390f8","responseTime":38,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.041","http_referrer":"","http_user_agent":"node-fetch","requestID":"cd0efc2bdda17208a00317d4817390f8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"97cf7ef0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":579,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:40Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fccbf3429-3de9-4454-90fc-26157cf8181f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1d73124b-2498-4c16-9b26-2fe614d488b4","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377920.0991113} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":579,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.124183,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ccbf3429-3de9-4454-90fc-26157cf8181f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"97cf7ef0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ccbf3429-3de9-4454-90fc-26157cf8181f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"97cf7ef0-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"97cf7ef0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/ccbf3429-3de9-4454-90fc-26157cf8181f/signaling 200 7ms","method":"POST","requestID":"97cf7ef0-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/devices/ccbf3429-3de9-4454-90fc-26157cf8181f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"97d0de80-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":580,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:40Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5096dcef-c7a0-4174-ab8a-6d7e756f2485","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"633099f8-ce1f-4109-88eb-282b953be4a7","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377920.1084712} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":580,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.175595,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"97d0de80-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"97d0de80-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"97d0de80-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485/signaling 200 8ms","method":"POST","requestID":"97d0de80-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyMH0.6Xh1cK_wtcrJoJCv_vZM0M2VIXAcRnsPzcZAP8Im5LY","level":"info","message":"auth send jwt","requestID":"8aea6a8be8018593e930d55822961cae"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"8aea6a8be8018593e930d55822961cae","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/da6e8700-4c05-4d19-a2a4-91ada11e73bb","requestID":"8aea6a8be8018593e930d55822961cae"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":581,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:40Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":581,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.677803,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/da6e8700-4c05-4d19-a2a4-91ada11e73bb","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8aea6a8be8018593e930d55822961cae","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/da6e8700-4c05-4d19-a2a4-91ada11e73bb","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377920,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyMH0.6Xh1cK_wtcrJoJCv_vZM0M2VIXAcRnsPzcZAP8Im5LY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8aea6a8be8018593e930d55822961cae","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/da6e8700-4c05-4d19-a2a4-91ada11e73bb","requestID":"8aea6a8be8018593e930d55822961cae"} experiment-1 | {"level":"info","message":"GET /experiments/da6e8700-4c05-4d19-a2a4-91ada11e73bb 200 9ms","method":"GET","requestID":"8aea6a8be8018593e930d55822961cae","responseTime":9,"status":200,"url":"/experiments/da6e8700-4c05-4d19-a2a4-91ada11e73bb"} gateway-1 | {"time_local":"03/Sep/2024:15:38:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/da6e8700-4c05-4d19-a2a4-91ada11e73bb HTTP/1.1","status": "200","body_bytes_sent":"1284","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8aea6a8be8018593e930d55822961cae"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyMH0.6Xh1cK_wtcrJoJCv_vZM0M2VIXAcRnsPzcZAP8Im5LY","level":"info","message":"auth send jwt","requestID":"160cc873b0e2461f7e1147b35eea2296"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"160cc873b0e2461f7e1147b35eea2296","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/da6e8700-4c05-4d19-a2a4-91ada11e73bb","requestID":"160cc873b0e2461f7e1147b35eea2296"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":582,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:40Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":582,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.650621,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:40Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/da6e8700-4c05-4d19-a2a4-91ada11e73bb","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"160cc873b0e2461f7e1147b35eea2296","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/da6e8700-4c05-4d19-a2a4-91ada11e73bb","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377920,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyMH0.6Xh1cK_wtcrJoJCv_vZM0M2VIXAcRnsPzcZAP8Im5LY"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"160cc873b0e2461f7e1147b35eea2296","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/da6e8700-4c05-4d19-a2a4-91ada11e73bb"},"level":"info","message":"Attempting to finish experiment","requestID":"160cc873b0e2461f7e1147b35eea2296"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"97d96a00-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":583,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:40Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":583,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.819903,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:40Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/89a38314-fcf2-4500-9782-9f934db93cb6","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"97d96a00-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:http://localhost/peerconnections/89a38314-fcf2-4500-9782-9f934db93cb6","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377920,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyMH0.6Xh1cK_wtcrJoJCv_vZM0M2VIXAcRnsPzcZAP8Im5LY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"97d96a00-6a0a-11ef-9b41-2363e6623fc8","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/89a38314-fcf2-4500-9782-9f934db93cb6","device":"5096dcef-c7a0-4174-ab8a-6d7e756f2485","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/89a38314-fcf2-4500-9782-9f934db93cb6","device":"ccbf3429-3de9-4454-90fc-26157cf8181f","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/89a38314-fcf2-4500-9782-9f934db93cb6' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/89a38314-fcf2-4500-9782-9f934db93cb6' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"89a38314-fcf2-4500-9782-9f934db93cb6","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F89a38314-fcf2-4500-9782-9f934db93cb6': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F89a38314-fcf2-4500-9782-9f934db93cb6","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"ea389f92-66de-49fd-b47d-4564dab4b97a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377920.173376} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7801d2bb707bd46b689236c6a408c6ee","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"7801d2bb707bd46b689236c6a408c6ee","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e33e6555-976f-481b-bd87-9a3ef3aff708","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377920.1736758} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"97d96a00-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b781c6fdf10915e551d3f9861bd648e6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"b781c6fdf10915e551d3f9861bd648e6","responseTime":0,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ccbf3429-3de9-4454-90fc-26157cf8181f"},{"config":{"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/5096dcef-c7a0-4174-ab8a-6d7e756f2485"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/89a38314-fcf2-4500-9782-9f934db93cb6"}}},"level":"info","message":"received a callback","requestID":"7801d2bb707bd46b689236c6a408c6ee"} 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":"connected","url":"http://localhost/devices/ccbf3429-3de9-4454-90fc-26157cf8181f"},{"config":{"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/5096dcef-c7a0-4174-ab8a-6d7e756f2485"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/89a38314-fcf2-4500-9782-9f934db93cb6"}}},"level":"info","message":"received a callback","requestID":"b781c6fdf10915e551d3f9861bd648e6"} device-1 | {"data":{"peerconnection":"89a38314-fcf2-4500-9782-9f934db93cb6","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"97d96a00-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"DELETE /peerconnections/89a38314-fcf2-4500-9782-9f934db93cb6 204 31ms","method":"DELETE","requestID":"97d96a00-6a0a-11ef-9b41-2363e6623fc8","responseTime":31,"status":204,"url":"/peerconnections/89a38314-fcf2-4500-9782-9f934db93cb6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/da6e8700-4c05-4d19-a2a4-91ada11e73bb"},"level":"info","message":"Successfully finished experiment","requestID":"160cc873b0e2461f7e1147b35eea2296"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"97e095f0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":584,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:40Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fccbf3429-3de9-4454-90fc-26157cf8181f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f5005d95-6923-4dfe-a02a-a1c3349b1a2c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377920.2116203} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":584,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.566128,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ccbf3429-3de9-4454-90fc-26157cf8181f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"97e095f0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ccbf3429-3de9-4454-90fc-26157cf8181f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"97e095f0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"97e095f0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/ccbf3429-3de9-4454-90fc-26157cf8181f/signaling 200 9ms","method":"POST","requestID":"97e095f0-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/devices/ccbf3429-3de9-4454-90fc-26157cf8181f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"97e243a0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fda6e8700-4c05-4d19-a2a4-91ada11e73bb': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fda6e8700-4c05-4d19-a2a4-91ada11e73bb","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"0fd1d33f-d64f-417a-9475-c1a8b051a4a2","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377920.2184448} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8681f9fd-4db9-4e33-a6f7-b1a05ca54d4c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377920.2186913} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"160cc873b0e2461f7e1147b35eea2296","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":585,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:40Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5096dcef-c7a0-4174-ab8a-6d7e756f2485","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"41468bf1-f219-45c6-b01b-8f0a794159ab","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377920.2227523} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":585,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.139682,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"97e243a0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"97e243a0-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"97e243a0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485/signaling 200 8ms","method":"POST","requestID":"97e243a0-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/da6e8700-4c05-4d19-a2a4-91ada11e73bb","requestID":"160cc873b0e2461f7e1147b35eea2296"} gateway-1 | {"time_local":"03/Sep/2024:15:38:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/da6e8700-4c05-4d19-a2a4-91ada11e73bb HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.132","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"160cc873b0e2461f7e1147b35eea2296"} experiment-1 | {"level":"info","message":"DELETE /experiments/da6e8700-4c05-4d19-a2a4-91ada11e73bb 204 130ms","method":"DELETE","requestID":"160cc873b0e2461f7e1147b35eea2296","responseTime":130,"status":204,"url":"/experiments/da6e8700-4c05-4d19-a2a4-91ada11e73bb"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 108ms","method":"POST","requestID":"7801d2bb707bd46b689236c6a408c6ee","responseTime":108,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.111","http_referrer":"","http_user_agent":"node-fetch","requestID":"7801d2bb707bd46b689236c6a408c6ee"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 108ms","method":"POST","requestID":"b781c6fdf10915e551d3f9861bd648e6","responseTime":108,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.111","http_referrer":"","http_user_agent":"node-fetch","requestID":"b781c6fdf10915e551d3f9861bd648e6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyMH0.6Xh1cK_wtcrJoJCv_vZM0M2VIXAcRnsPzcZAP8Im5LY","level":"info","message":"auth send jwt","requestID":"1d8103e128bbd75d349191445dd5de49"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1d8103e128bbd75d349191445dd5de49","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1d8103e128bbd75d349191445dd5de49"} gateway-1 | {"time_local":"03/Sep/2024:15:38:40 +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.627","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"77fce053a171d415d2e68bccdc824d7d"} gateway-1 | {"time_local":"03/Sep/2024:15:38:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2847","request_time":"0.640","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"dad1e34103c0943e7b116694c1622ca7"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":586,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:40Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":586,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.894792,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:40Z"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/5096dcef-c7a0-4174-ab8a-6d7e756f2485' closed"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"1d8103e128bbd75d349191445dd5de49","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377920,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyMH0.6Xh1cK_wtcrJoJCv_vZM0M2VIXAcRnsPzcZAP8Im5LY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1d8103e128bbd75d349191445dd5de49","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/ccbf3429-3de9-4454-90fc-26157cf8181f' 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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe980f980-e781-417d-9ddd-b09d5ff81511","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"fb8d64b4-6aeb-411c-bfea-51ae5898da1a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377920.312165} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1d8103e128bbd75d349191445dd5de49","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3104dbb8-64a1-41df-9461-38bd05daaa69","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377920.316656} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"1d8103e128bbd75d349191445dd5de49","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe980f980-e781-417d-9ddd-b09d5ff81511","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"818c65eb-2770-481c-8344-9aee68a4e334","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377920.3263} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"41d03fdf-395f-4d73-b961-d6478b2a067c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377920.3263972} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"1d8103e128bbd75d349191445dd5de49","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe980f980-e781-417d-9ddd-b09d5ff81511","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe980f980-e781-417d-9ddd-b09d5ff81511","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:40.326268944Z"}]},"request_id":"fba36785-e6a7-440d-99aa-004ab7036c42","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377920.3310797} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1d8103e128bbd75d349191445dd5de49","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1d8103e128bbd75d349191445dd5de49"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"1d8103e128bbd75d349191445dd5de49","responseTime":47,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"03/Sep/2024:15:38:40 +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":"1d8103e128bbd75d349191445dd5de49"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyMH0.6Xh1cK_wtcrJoJCv_vZM0M2VIXAcRnsPzcZAP8Im5LY","level":"info","message":"auth send jwt","requestID":"9af4db67197e7cfad53259d115ea25b8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9af4db67197e7cfad53259d115ea25b8","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"9af4db67197e7cfad53259d115ea25b8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":587,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:40Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":587,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.035712,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:40Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9af4db67197e7cfad53259d115ea25b8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377920,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyMH0.6Xh1cK_wtcrJoJCv_vZM0M2VIXAcRnsPzcZAP8Im5LY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9af4db67197e7cfad53259d115ea25b8","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F77ad2e87-f862-493d-820e-b697753d0f7a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"28f8a730-50d1-46ec-8d6b-c5925bbdb9c2","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377920.3549483} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9af4db67197e7cfad53259d115ea25b8","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2557ff3f-6bc3-4c5b-b69a-90697713ea64","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377920.3591707} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"9af4db67197e7cfad53259d115ea25b8","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F77ad2e87-f862-493d-820e-b697753d0f7a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"5ec2c2e7-8567-4209-b0b7-d7b0381281d8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377920.3763816} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f1b096e6-cdef-4b27-aacc-8e27596cf613","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377920.3765247} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"9af4db67197e7cfad53259d115ea25b8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F77ad2e87-f862-493d-820e-b697753d0f7a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F77ad2e87-f862-493d-820e-b697753d0f7a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:40.376357644Z"}]},"request_id":"68c14485-ce9a-486b-b176-e0a579691890","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377920.3807032} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"9af4db67197e7cfad53259d115ea25b8","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"9af4db67197e7cfad53259d115ea25b8"} gateway-1 | {"time_local":"03/Sep/2024:15:38:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9af4db67197e7cfad53259d115ea25b8"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"9af4db67197e7cfad53259d115ea25b8","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8dc1d329fbe4798c258281861927df31","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8dc1d329fbe4798c258281861927df31","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"03/Sep/2024:15:38:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e980f980-e781-417d-9ddd-b09d5ff81511/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":"8dc1d329fbe4798c258281861927df31"} device-1 | {"level":"info","message":"OPTIONS /devices/e980f980-e781-417d-9ddd-b09d5ff81511/websocket 200 1ms","method":"OPTIONS","requestID":"8dc1d329fbe4798c258281861927df31","responseTime":1,"status":200,"url":"/devices/e980f980-e781-417d-9ddd-b09d5ff81511/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyMn0.A8undaR4nrMj2TfWAZDK5i1k-XkXZ_Xm_AeaCeFwrNw","level":"info","message":"auth send jwt","requestID":"276bf7f78d5f0170fbe3633aa85c5414"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"276bf7f78d5f0170fbe3633aa85c5414","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"276bf7f78d5f0170fbe3633aa85c5414"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":588,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":588,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.803968,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e980f980-e781-417d-9ddd-b09d5ff81511","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"276bf7f78d5f0170fbe3633aa85c5414","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/e980f980-e781-417d-9ddd-b09d5ff81511","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377922,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyMn0.A8undaR4nrMj2TfWAZDK5i1k-XkXZ_Xm_AeaCeFwrNw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"276bf7f78d5f0170fbe3633aa85c5414","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f46fdae54a1aae915b090f4878dfa6e7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"f46fdae54a1aae915b090f4878dfa6e7","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"03/Sep/2024:15:38:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/77ad2e87-f862-493d-820e-b697753d0f7a/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":"f46fdae54a1aae915b090f4878dfa6e7"} device-1 | {"level":"info","message":"OPTIONS /devices/77ad2e87-f862-493d-820e-b697753d0f7a/websocket 200 1ms","method":"OPTIONS","requestID":"f46fdae54a1aae915b090f4878dfa6e7","responseTime":1,"status":200,"url":"/devices/77ad2e87-f862-493d-820e-b697753d0f7a/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyMn0.A8undaR4nrMj2TfWAZDK5i1k-XkXZ_Xm_AeaCeFwrNw","level":"info","message":"auth send jwt","requestID":"06acdbfde4d9efa14fd98348de313622"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"276bf7f78d5f0170fbe3633aa85c5414"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"06acdbfde4d9efa14fd98348de313622","responseTime":4,"status":200,"url":"/auth"} gateway-1 | {"time_local":"03/Sep/2024:15:38:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/e980f980-e781-417d-9ddd-b09d5ff81511/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":"276bf7f78d5f0170fbe3633aa85c5414"} device-1 | {"level":"info","message":"POST /devices/e980f980-e781-417d-9ddd-b09d5ff81511/websocket 200 22ms","method":"POST","requestID":"276bf7f78d5f0170fbe3633aa85c5414","responseTime":22,"status":200,"url":"/devices/e980f980-e781-417d-9ddd-b09d5ff81511/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"06acdbfde4d9efa14fd98348de313622"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":589,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":589,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.213777,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/77ad2e87-f862-493d-820e-b697753d0f7a","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"06acdbfde4d9efa14fd98348de313622","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/77ad2e87-f862-493d-820e-b697753d0f7a","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377922,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyMn0.A8undaR4nrMj2TfWAZDK5i1k-XkXZ_Xm_AeaCeFwrNw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"06acdbfde4d9efa14fd98348de313622","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"device 'http://localhost/devices/e980f980-e781-417d-9ddd-b09d5ff81511' connected"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"06acdbfde4d9efa14fd98348de313622"} gateway-1 | {"time_local":"03/Sep/2024:15:38:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/77ad2e87-f862-493d-820e-b697753d0f7a/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.032","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"06acdbfde4d9efa14fd98348de313622"} device-1 | {"level":"info","message":"POST /devices/77ad2e87-f862-493d-820e-b697753d0f7a/websocket 200 24ms","method":"POST","requestID":"06acdbfde4d9efa14fd98348de313622","responseTime":24,"status":200,"url":"/devices/77ad2e87-f862-493d-820e-b697753d0f7a/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/77ad2e87-f862-493d-820e-b697753d0f7a' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyMn0.A8undaR4nrMj2TfWAZDK5i1k-XkXZ_Xm_AeaCeFwrNw","level":"info","message":"auth send jwt","requestID":"a559914e55137194183631cca0b84c07"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a559914e55137194183631cca0b84c07","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a559914e55137194183631cca0b84c07"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":590,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":590,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.267328,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e980f980-e781-417d-9ddd-b09d5ff81511","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a559914e55137194183631cca0b84c07","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/e980f980-e781-417d-9ddd-b09d5ff81511","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377922,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyMn0.A8undaR4nrMj2TfWAZDK5i1k-XkXZ_Xm_AeaCeFwrNw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a559914e55137194183631cca0b84c07","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe980f980-e781-417d-9ddd-b09d5ff81511","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe980f980-e781-417d-9ddd-b09d5ff81511","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:40.326268944Z"}]},"request_id":"b919a994-8383-474e-952c-17276ef5a3e3","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377922.4679139} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a559914e55137194183631cca0b84c07","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a559914e55137194183631cca0b84c07"} device-1 | {"level":"info","message":"GET /devices/e980f980-e781-417d-9ddd-b09d5ff81511? 200 17ms","method":"GET","requestID":"a559914e55137194183631cca0b84c07","responseTime":17,"status":200,"url":"/devices/e980f980-e781-417d-9ddd-b09d5ff81511?"} gateway-1 | {"time_local":"03/Sep/2024:15:38:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e980f980-e781-417d-9ddd-b09d5ff81511? 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":"a559914e55137194183631cca0b84c07"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyMn0.A8undaR4nrMj2TfWAZDK5i1k-XkXZ_Xm_AeaCeFwrNw","level":"info","message":"auth send jwt","requestID":"1f3d4ee21954ba6bc315f8f8427a436d"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"1f3d4ee21954ba6bc315f8f8427a436d","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1f3d4ee21954ba6bc315f8f8427a436d"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":591,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":591,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.764925,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/77ad2e87-f862-493d-820e-b697753d0f7a","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"1f3d4ee21954ba6bc315f8f8427a436d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/77ad2e87-f862-493d-820e-b697753d0f7a","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377922,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyMn0.A8undaR4nrMj2TfWAZDK5i1k-XkXZ_Xm_AeaCeFwrNw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1f3d4ee21954ba6bc315f8f8427a436d","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F77ad2e87-f862-493d-820e-b697753d0f7a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F77ad2e87-f862-493d-820e-b697753d0f7a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:40.376357644Z"}]},"request_id":"e15912fa-7879-499b-a581-d923e3f042db","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377922.4977744} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"1f3d4ee21954ba6bc315f8f8427a436d","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1f3d4ee21954ba6bc315f8f8427a436d"} gateway-1 | {"time_local":"03/Sep/2024:15:38:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/77ad2e87-f862-493d-820e-b697753d0f7a? 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":"1f3d4ee21954ba6bc315f8f8427a436d"} device-1 | {"level":"info","message":"GET /devices/77ad2e87-f862-493d-820e-b697753d0f7a? 200 23ms","method":"GET","requestID":"1f3d4ee21954ba6bc315f8f8427a436d","responseTime":23,"status":200,"url":"/devices/77ad2e87-f862-493d-820e-b697753d0f7a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyMn0.A8undaR4nrMj2TfWAZDK5i1k-XkXZ_Xm_AeaCeFwrNw","level":"info","message":"auth send jwt","requestID":"07ef754a2b40c27845133d32eb3bcff3"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"07ef754a2b40c27845133d32eb3bcff3","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"07ef754a2b40c27845133d32eb3bcff3"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":592,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":592,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.170488,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"07ef754a2b40c27845133d32eb3bcff3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377922,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyMn0.A8undaR4nrMj2TfWAZDK5i1k-XkXZ_Xm_AeaCeFwrNw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"07ef754a2b40c27845133d32eb3bcff3","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/38e35c5f-30b7-4d77-9c5f-47deeb12025d"},"level":"info","message":"Attempting to run experiment","requestID":"07ef754a2b40c27845133d32eb3bcff3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/38e35c5f-30b7-4d77-9c5f-47deeb12025d"},"level":"info","message":"Attempting to book experiment","requestID":"07ef754a2b40c27845133d32eb3bcff3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/38e35c5f-30b7-4d77-9c5f-47deeb12025d"},"level":"info","message":"Successfully booked experiment","requestID":"07ef754a2b40c27845133d32eb3bcff3"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9947c710-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"99481530-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":593,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":593,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.927399,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":594,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e980f980-e781-417d-9ddd-b09d5ff81511","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9947c710-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/e980f980-e781-417d-9ddd-b09d5ff81511","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377922,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyMn0.A8undaR4nrMj2TfWAZDK5i1k-XkXZ_Xm_AeaCeFwrNw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"9947c710-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":594,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.015144,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/77ad2e87-f862-493d-820e-b697753d0f7a","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"99481530-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/77ad2e87-f862-493d-820e-b697753d0f7a","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377922,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyMn0.A8undaR4nrMj2TfWAZDK5i1k-XkXZ_Xm_AeaCeFwrNw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"99481530-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe980f980-e781-417d-9ddd-b09d5ff81511","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe980f980-e781-417d-9ddd-b09d5ff81511","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:40.326268944Z"}]},"request_id":"6e6e9daf-d454-4df6-b891-095c6882add6","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377922.5733128} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9947c710-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F77ad2e87-f862-493d-820e-b697753d0f7a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F77ad2e87-f862-493d-820e-b697753d0f7a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:40.376357644Z"}]},"request_id":"c93c4aaa-dd27-4f0d-86af-f4a0a2f8804a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377922.57432} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"99481530-6a0a-11ef-9b41-2363e6623fc8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9947c710-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/e980f980-e781-417d-9ddd-b09d5ff81511? 200 19ms","method":"GET","requestID":"9947c710-6a0a-11ef-9b41-2363e6623fc8","responseTime":19,"status":200,"url":"/devices/e980f980-e781-417d-9ddd-b09d5ff81511?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"99481530-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/77ad2e87-f862-493d-820e-b697753d0f7a? 200 19ms","method":"GET","requestID":"99481530-6a0a-11ef-9b41-2363e6623fc8","responseTime":19,"status":200,"url":"/devices/77ad2e87-f862-493d-820e-b697753d0f7a?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/38e35c5f-30b7-4d77-9c5f-47deeb12025d"},"level":"info","message":"Setting up experiment","requestID":"07ef754a2b40c27845133d32eb3bcff3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/38e35c5f-30b7-4d77-9c5f-47deeb12025d"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"07ef754a2b40c27845133d32eb3bcff3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/38e35c5f-30b7-4d77-9c5f-47deeb12025d"},"level":"info","message":"Successfully locked booking for experiment","requestID":"07ef754a2b40c27845133d32eb3bcff3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/38e35c5f-30b7-4d77-9c5f-47deeb12025d"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"07ef754a2b40c27845133d32eb3bcff3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/38e35c5f-30b7-4d77-9c5f-47deeb12025d"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"07ef754a2b40c27845133d32eb3bcff3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/38e35c5f-30b7-4d77-9c5f-47deeb12025d"},"level":"info","message":"Attempting to update booking for experiment","requestID":"07ef754a2b40c27845133d32eb3bcff3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/38e35c5f-30b7-4d77-9c5f-47deeb12025d"},"level":"info","message":"Successfully updated booking for experiment","requestID":"07ef754a2b40c27845133d32eb3bcff3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/38e35c5f-30b7-4d77-9c5f-47deeb12025d"},"level":"info","message":"Successfully set up experiment","requestID":"07ef754a2b40c27845133d32eb3bcff3"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"99522750-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"99527570-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":595,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:42Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9952eaa0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":595,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.266724,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":596,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:42Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/38e35c5f-30b7-4d77-9c5f-47deeb12025d"},"level":"info","message":"Successfully running experiment","requestID":"07ef754a2b40c27845133d32eb3bcff3"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e980f980-e781-417d-9ddd-b09d5ff81511","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"99522750-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/e980f980-e781-417d-9ddd-b09d5ff81511","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377922,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyMn0.A8undaR4nrMj2TfWAZDK5i1k-XkXZ_Xm_AeaCeFwrNw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"99522750-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":596,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.893627,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/77ad2e87-f862-493d-820e-b697753d0f7a","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"99527570-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/77ad2e87-f862-493d-820e-b697753d0f7a","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377922,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyMn0.A8undaR4nrMj2TfWAZDK5i1k-XkXZ_Xm_AeaCeFwrNw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"99527570-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":597,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":597,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.793007,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe980f980-e781-417d-9ddd-b09d5ff81511","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8abdfca5-3e87-400b-ade9-946eb2d87528","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377922.6404064} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe980f980-e781-417d-9ddd-b09d5ff81511","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe980f980-e781-417d-9ddd-b09d5ff81511","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:40.326268944Z"}]},"request_id":"cda3b56a-4aa2-4b0b-b526-80d974fa4e4c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377922.6414} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e980f980-e781-417d-9ddd-b09d5ff81511","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9952eaa0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e980f980-e781-417d-9ddd-b09d5ff81511","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"9952eaa0-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"99522750-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F77ad2e87-f862-493d-820e-b697753d0f7a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F77ad2e87-f862-493d-820e-b697753d0f7a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:40.376357644Z"}]},"request_id":"7f211e18-b680-4601-bc27-12a549bac445","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377922.6426523} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"99527570-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9952eaa0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/e980f980-e781-417d-9ddd-b09d5ff81511/signaling 200 18ms","method":"POST","requestID":"9952eaa0-6a0a-11ef-9b41-2363e6623fc8","responseTime":18,"status":200,"url":"/devices/e980f980-e781-417d-9ddd-b09d5ff81511/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"99522750-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/e980f980-e781-417d-9ddd-b09d5ff81511? 200 23ms","method":"GET","requestID":"99522750-6a0a-11ef-9b41-2363e6623fc8","responseTime":23,"status":200,"url":"/devices/e980f980-e781-417d-9ddd-b09d5ff81511?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"99527570-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/77ad2e87-f862-493d-820e-b697753d0f7a? 200 22ms","method":"GET","requestID":"99527570-6a0a-11ef-9b41-2363e6623fc8","responseTime":22,"status":200,"url":"/devices/77ad2e87-f862-493d-820e-b697753d0f7a?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9955f7e0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"99566d10-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":598,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":598,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.581707,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":599,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F77ad2e87-f862-493d-820e-b697753d0f7a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"74bc903a-64e2-456a-b904-5a7594412b8a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377922.660574} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F38e35c5f-30b7-4d77-9c5f-47deeb12025d#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F38e35c5f-30b7-4d77-9c5f-47deeb12025d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"dfb92bb3-088d-4dd4-9dc0-941af8010764","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377922.6609905} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d51c548c-29ce-453b-b148-ed692be2c2bc","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377922.6613166} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/77ad2e87-f862-493d-820e-b697753d0f7a","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9955f7e0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/77ad2e87-f862-493d-820e-b697753d0f7a","object_type":"device","rebac_allow":false,"scope_allow":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":"9955f7e0-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 27ms","method":"POST","requestID":"07ef754a2b40c27845133d32eb3bcff3","responseTime":27,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":599,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.960539,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe980f980-e781-417d-9ddd-b09d5ff81511","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a03de710-f193-4890-9473-5512b1ac8ec8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377922.6644206} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e980f980-e781-417d-9ddd-b09d5ff81511","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"99566d10-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e980f980-e781-417d-9ddd-b09d5ff81511","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"99566d10-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9955f7e0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/77ad2e87-f862-493d-820e-b697753d0f7a/signaling 200 15ms","method":"POST","requestID":"9955f7e0-6a0a-11ef-9b41-2363e6623fc8","responseTime":15,"status":200,"url":"/devices/77ad2e87-f862-493d-820e-b697753d0f7a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"99566d10-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/e980f980-e781-417d-9ddd-b09d5ff81511/signaling 200 13ms","method":"POST","requestID":"99566d10-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/devices/e980f980-e781-417d-9ddd-b09d5ff81511/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/38e35c5f-30b7-4d77-9c5f-47deeb12025d","user":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"07ef754a2b40c27845133d32eb3bcff3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"99590520-6a0a-11ef-9b41-2363e6623fc8"} gateway-1 | {"time_local":"03/Sep/2024:15:38:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1211","request_time":"0.168","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"07ef754a2b40c27845133d32eb3bcff3"} experiment-1 | {"level":"info","message":"POST /experiments? 201 160ms","method":"POST","requestID":"07ef754a2b40c27845133d32eb3bcff3","responseTime":160,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":600,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F77ad2e87-f862-493d-820e-b697753d0f7a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fdfd50aa-091d-47aa-a958-2e6f3132cedf","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377922.6789522} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":600,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.003205,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:42Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyMn0.A8undaR4nrMj2TfWAZDK5i1k-XkXZ_Xm_AeaCeFwrNw","level":"info","message":"auth send jwt","requestID":"4998dffa7b8406da9ceb73400417d762"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4998dffa7b8406da9ceb73400417d762","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/77ad2e87-f862-493d-820e-b697753d0f7a","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"99590520-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/77ad2e87-f862-493d-820e-b697753d0f7a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"99590520-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4998dffa7b8406da9ceb73400417d762"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":601,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":601,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.019303,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:42Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"99590520-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/77ad2e87-f862-493d-820e-b697753d0f7a/signaling 200 10ms","method":"POST","requestID":"99590520-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/devices/77ad2e87-f862-493d-820e-b697753d0f7a/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e980f980-e781-417d-9ddd-b09d5ff81511","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"4998dffa7b8406da9ceb73400417d762","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/e980f980-e781-417d-9ddd-b09d5ff81511","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377922,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyMn0.A8undaR4nrMj2TfWAZDK5i1k-XkXZ_Xm_AeaCeFwrNw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4998dffa7b8406da9ceb73400417d762","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/38e35c5f-30b7-4d77-9c5f-47deeb12025d"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"07ef754a2b40c27845133d32eb3bcff3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/38e35c5f-30b7-4d77-9c5f-47deeb12025d"},"level":"info","message":"Building connection plan","requestID":"07ef754a2b40c27845133d32eb3bcff3"} 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":"c4625b8a-4aa8-42c2-b2c5-b5b6ec893ac2"},{"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":"4c9ea019-056b-4eaf-af8d-6ef88bcd2594"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"2fc91f04-b533-4b7b-82cc-86c90b2d48f9"}]},"level":"info","message":"Built pairwise service configurations","requestID":"07ef754a2b40c27845133d32eb3bcff3"} 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/e980f980-e781-417d-9ddd-b09d5ff81511"},{"config":{"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/77ad2e87-f862-493d-820e-b697753d0f7a"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"07ef754a2b40c27845133d32eb3bcff3"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"995ad9e0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe980f980-e781-417d-9ddd-b09d5ff81511","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe980f980-e781-417d-9ddd-b09d5ff81511","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:40.326268944Z"}]},"request_id":"a8141b75-f572-476f-adbe-7bb89f413bdd","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377922.688047} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4998dffa7b8406da9ceb73400417d762","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":602,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":602,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.629554,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"995ad9e0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377922,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyMn0.A8undaR4nrMj2TfWAZDK5i1k-XkXZ_Xm_AeaCeFwrNw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"995ad9e0-6a0a-11ef-9b41-2363e6623fc8","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4998dffa7b8406da9ceb73400417d762"} device-1 | {"level":"info","message":"GET /devices/e980f980-e781-417d-9ddd-b09d5ff81511? 200 13ms","method":"GET","requestID":"4998dffa7b8406da9ceb73400417d762","responseTime":13,"status":200,"url":"/devices/e980f980-e781-417d-9ddd-b09d5ff81511?"} gateway-1 | {"time_local":"03/Sep/2024:15:38:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e980f980-e781-417d-9ddd-b09d5ff81511? 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":"4998dffa7b8406da9ceb73400417d762"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyMn0.A8undaR4nrMj2TfWAZDK5i1k-XkXZ_Xm_AeaCeFwrNw","level":"info","message":"auth send jwt","requestID":"2aabffe949b92967a2189aaec41533c5"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"2aabffe949b92967a2189aaec41533c5","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2aabffe949b92967a2189aaec41533c5"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","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%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"91caf3ec-e781-488f-b342-1fb02c4c5930","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377922.6993592} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7ebcb134-db3d-4d2e-aa1f-7757e40c9daf","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377922.699561} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"995ad9e0-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":603,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":603,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.670189,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/77ad2e87-f862-493d-820e-b697753d0f7a","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"2aabffe949b92967a2189aaec41533c5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/77ad2e87-f862-493d-820e-b697753d0f7a","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377922,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyMn0.A8undaR4nrMj2TfWAZDK5i1k-XkXZ_Xm_AeaCeFwrNw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2aabffe949b92967a2189aaec41533c5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F77ad2e87-f862-493d-820e-b697753d0f7a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F77ad2e87-f862-493d-820e-b697753d0f7a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:40.376357644Z"}]},"request_id":"3b69df81-ee19-4cce-ac37-21553d0392a8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377922.7063994} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2aabffe949b92967a2189aaec41533c5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"995ad9e0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"995ad9e0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/ec04c478-ceb1-432d-af69-511652fdbf42'","requestID":"995ad9e0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/ec04c478-ceb1-432d-af69-511652fdbf42'","requestID":"995ad9e0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"995ad9e0-6a0a-11ef-9b41-2363e6623fc8"} 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":"995ad9e0-6a0a-11ef-9b41-2363e6623fc8","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":"getDevicesByDeviceId succeeded","requestID":"2aabffe949b92967a2189aaec41533c5"} gateway-1 | {"time_local":"03/Sep/2024:15:38:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/77ad2e87-f862-493d-820e-b697753d0f7a? 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":"2aabffe949b92967a2189aaec41533c5"} device-1 | {"level":"info","message":"GET /devices/77ad2e87-f862-493d-820e-b697753d0f7a? 200 22ms","method":"GET","requestID":"2aabffe949b92967a2189aaec41533c5","responseTime":22,"status":200,"url":"/devices/77ad2e87-f862-493d-820e-b697753d0f7a?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"995ad9e0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/ec04c478-ceb1-432d-af69-511652fdbf42","device":"77ad2e87-f862-493d-820e-b697753d0f7a","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 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/ec04c478-ceb1-432d-af69-511652fdbf42","device":"e980f980-e781-417d-9ddd-b09d5ff81511","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/38e35c5f-30b7-4d77-9c5f-47deeb12025d"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"07ef754a2b40c27845133d32eb3bcff3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"996401a0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":604,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe980f980-e781-417d-9ddd-b09d5ff81511","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b2ad83c2-8157-482b-a662-be920b8e69ad","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377922.7497926} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":604,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.195127,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e980f980-e781-417d-9ddd-b09d5ff81511","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"996401a0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e980f980-e781-417d-9ddd-b09d5ff81511","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"996401a0-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"996401a0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/e980f980-e781-417d-9ddd-b09d5ff81511/signaling 200 7ms","method":"POST","requestID":"996401a0-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/devices/e980f980-e781-417d-9ddd-b09d5ff81511/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"99656130-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":605,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F77ad2e87-f862-493d-820e-b697753d0f7a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1dae118f-f4fa-43b8-a5da-2e535ed8a538","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377922.7589762} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":605,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.293039,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/77ad2e87-f862-493d-820e-b697753d0f7a","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"99656130-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/77ad2e87-f862-493d-820e-b697753d0f7a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"99656130-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"99656130-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/77ad2e87-f862-493d-820e-b697753d0f7a/signaling 200 7ms","method":"POST","requestID":"99656130-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/devices/77ad2e87-f862-493d-820e-b697753d0f7a/signaling"} device-1 | {"device":"e980f980-e781-417d-9ddd-b09d5ff81511","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"e980f980-e781-417d-9ddd-b09d5ff81511","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"77ad2e87-f862-493d-820e-b697753d0f7a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"77ad2e87-f862-493d-820e-b697753d0f7a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 114732351204973807 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:tsk+\r\na=ice-pwd:8RMV8TZG+wPy3ufaSWU9rJpu\r\na=ice-options:trickle\r\na=fingerprint:sha-256 3F:A0:29:69:DB:A7:A3:99:C9:B5:31:73:31:DA:5B:88:C5:14:B3:92:A6:01:B4:09:DC:58:59:F0:AE:C1:6A:DF\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"77ad2e87-f862-493d-820e-b697753d0f7a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 3387411696665027976 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:zwlP\r\na=ice-pwd:4/5JX4joY1SfbgkXkmmYncIM\r\na=ice-options:trickle\r\na=fingerprint:sha-256 7F:D0:DE:47:49:20:D8:1F:F4:D2:7F:60:F0:78:37:6D:37:68:84:62:3E:39:BA:73:FD:E8:A3:60:AE:FE:76:54\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"e980f980-e781-417d-9ddd-b09d5ff81511","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:42325108 1 udp 2113937151 a0e7e661-48b7-4b00-a50b-b57eb461a032.local 34138 typ host generation 0 ufrag zwlP network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"e980f980-e781-417d-9ddd-b09d5ff81511","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2259205643 1 udp 1677729535 141.24.211.56 34138 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag zwlP network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"e980f980-e781-417d-9ddd-b09d5ff81511","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/e980f980-e781-417d-9ddd-b09d5ff81511'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/e980f980-e781-417d-9ddd-b09d5ff81511'"} device-1 | {"content":{"candidate":"candidate:1094901817 1 udp 2113937151 669a5acc-639b-4c1f-892b-e4bf73a6282b.local 45954 typ host generation 0 ufrag tsk+ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"77ad2e87-f862-493d-820e-b697753d0f7a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3530113322 1 udp 1677729535 141.24.211.56 45954 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag tsk+ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"77ad2e87-f862-493d-820e-b697753d0f7a","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/77ad2e87-f862-493d-820e-b697753d0f7a'"} device-1 | {"device":"77ad2e87-f862-493d-820e-b697753d0f7a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"e980f980-e781-417d-9ddd-b09d5ff81511","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/ec04c478-ceb1-432d-af69-511652fdbf42' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ec04c478-ceb1-432d-af69-511652fdbf42","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"77ad2e87-f862-493d-820e-b697753d0f7a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"e980f980-e781-417d-9ddd-b09d5ff81511","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"92ea7e6bd20e7fac716bf54761647f76","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"92ea7e6bd20e7fac716bf54761647f76","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"e980f980-e781-417d-9ddd-b09d5ff81511","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"77ad2e87-f862-493d-820e-b697753d0f7a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","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/e980f980-e781-417d-9ddd-b09d5ff81511"},{"config":{"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/77ad2e87-f862-493d-820e-b697753d0f7a"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/ec04c478-ceb1-432d-af69-511652fdbf42"}}},"level":"info","message":"received a callback","requestID":"92ea7e6bd20e7fac716bf54761647f76"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"92ea7e6bd20e7fac716bf54761647f76","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38: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.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"92ea7e6bd20e7fac716bf54761647f76"} device-1 | {"device":"e980f980-e781-417d-9ddd-b09d5ff81511","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"ec04c478-ceb1-432d-af69-511652fdbf42","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"ec04c478-ceb1-432d-af69-511652fdbf42","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/ec04c478-ceb1-432d-af69-511652fdbf42' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ec04c478-ceb1-432d-af69-511652fdbf42","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c7e4bdd50ca202f3eac05cbde00806eb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c7e4bdd50ca202f3eac05cbde00806eb","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/e980f980-e781-417d-9ddd-b09d5ff81511"},{"config":{"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/77ad2e87-f862-493d-820e-b697753d0f7a"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/ec04c478-ceb1-432d-af69-511652fdbf42"}}},"level":"info","message":"received a callback","requestID":"c7e4bdd50ca202f3eac05cbde00806eb"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"99736af0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":606,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fec04c478-ceb1-432d-af69-511652fdbf42","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"64651c47-f169-42b9-9361-8100bb4e72d8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377922.8513958} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":606,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.07734,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ec04c478-ceb1-432d-af69-511652fdbf42","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"99736af0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/ec04c478-ceb1-432d-af69-511652fdbf42","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":"99736af0-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"99736af0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /peerconnections/ec04c478-ceb1-432d-af69-511652fdbf42 200 7ms","method":"GET","requestID":"99736af0-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/peerconnections/ec04c478-ceb1-432d-af69-511652fdbf42"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 31ms","method":"POST","requestID":"c7e4bdd50ca202f3eac05cbde00806eb","responseTime":31,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38: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.034","http_referrer":"","http_user_agent":"node-fetch","requestID":"c7e4bdd50ca202f3eac05cbde00806eb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"997789a0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":607,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe980f980-e781-417d-9ddd-b09d5ff81511","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"189d6068-e8d1-4826-b1f5-e1ec90a4bbb6","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377922.878758} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":607,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.124377,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e980f980-e781-417d-9ddd-b09d5ff81511","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"997789a0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e980f980-e781-417d-9ddd-b09d5ff81511","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"997789a0-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"997789a0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/e980f980-e781-417d-9ddd-b09d5ff81511/signaling 200 7ms","method":"POST","requestID":"997789a0-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/devices/e980f980-e781-417d-9ddd-b09d5ff81511/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"99791040-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":608,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F77ad2e87-f862-493d-820e-b697753d0f7a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c584a2f3-66d7-41e2-993a-73de9089fd3f","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377922.8882837} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":608,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.100251,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/77ad2e87-f862-493d-820e-b697753d0f7a","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"99791040-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/77ad2e87-f862-493d-820e-b697753d0f7a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"99791040-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"99791040-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/77ad2e87-f862-493d-820e-b697753d0f7a/signaling 200 8ms","method":"POST","requestID":"99791040-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/devices/77ad2e87-f862-493d-820e-b697753d0f7a/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyMn0.A8undaR4nrMj2TfWAZDK5i1k-XkXZ_Xm_AeaCeFwrNw","level":"info","message":"auth send jwt","requestID":"074e624a104f4c75368048429bfe07e2"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"074e624a104f4c75368048429bfe07e2","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/38e35c5f-30b7-4d77-9c5f-47deeb12025d","requestID":"074e624a104f4c75368048429bfe07e2"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":609,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":609,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.687464,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/38e35c5f-30b7-4d77-9c5f-47deeb12025d","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"074e624a104f4c75368048429bfe07e2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/38e35c5f-30b7-4d77-9c5f-47deeb12025d","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377922,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyMn0.A8undaR4nrMj2TfWAZDK5i1k-XkXZ_Xm_AeaCeFwrNw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"074e624a104f4c75368048429bfe07e2","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/38e35c5f-30b7-4d77-9c5f-47deeb12025d","requestID":"074e624a104f4c75368048429bfe07e2"} experiment-1 | {"level":"info","message":"GET /experiments/38e35c5f-30b7-4d77-9c5f-47deeb12025d 200 12ms","method":"GET","requestID":"074e624a104f4c75368048429bfe07e2","responseTime":12,"status":200,"url":"/experiments/38e35c5f-30b7-4d77-9c5f-47deeb12025d"} gateway-1 | {"time_local":"03/Sep/2024:15:38:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/38e35c5f-30b7-4d77-9c5f-47deeb12025d HTTP/1.1","status": "200","body_bytes_sent":"1284","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"074e624a104f4c75368048429bfe07e2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyMn0.A8undaR4nrMj2TfWAZDK5i1k-XkXZ_Xm_AeaCeFwrNw","level":"info","message":"auth send jwt","requestID":"623966ff1c93b54d4dc5b20ce9b40f62"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"623966ff1c93b54d4dc5b20ce9b40f62","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/38e35c5f-30b7-4d77-9c5f-47deeb12025d","requestID":"623966ff1c93b54d4dc5b20ce9b40f62"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":610,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":610,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.667379,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/38e35c5f-30b7-4d77-9c5f-47deeb12025d","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"623966ff1c93b54d4dc5b20ce9b40f62","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/38e35c5f-30b7-4d77-9c5f-47deeb12025d","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377922,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyMn0.A8undaR4nrMj2TfWAZDK5i1k-XkXZ_Xm_AeaCeFwrNw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"623966ff1c93b54d4dc5b20ce9b40f62","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/38e35c5f-30b7-4d77-9c5f-47deeb12025d"},"level":"info","message":"Attempting to finish experiment","requestID":"623966ff1c93b54d4dc5b20ce9b40f62"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"99851e30-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":611,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":611,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":2.005495,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:42Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ec04c478-ceb1-432d-af69-511652fdbf42","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"99851e30-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:http://localhost/peerconnections/ec04c478-ceb1-432d-af69-511652fdbf42","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377922,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyMn0.A8undaR4nrMj2TfWAZDK5i1k-XkXZ_Xm_AeaCeFwrNw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"99851e30-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/ec04c478-ceb1-432d-af69-511652fdbf42","device":"e980f980-e781-417d-9ddd-b09d5ff81511","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/ec04c478-ceb1-432d-af69-511652fdbf42","device":"77ad2e87-f862-493d-820e-b697753d0f7a","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/ec04c478-ceb1-432d-af69-511652fdbf42' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/ec04c478-ceb1-432d-af69-511652fdbf42' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ec04c478-ceb1-432d-af69-511652fdbf42","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fec04c478-ceb1-432d-af69-511652fdbf42': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fec04c478-ceb1-432d-af69-511652fdbf42","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"c210981a-8aba-485d-8da1-28db7c06763b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377922.986177} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a6868085-9ba1-4ede-a07c-2a1ab78323a8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377922.9865177} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"946a12cd43d05e6d762fd46cfb78e9a4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"99851e30-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"946a12cd43d05e6d762fd46cfb78e9a4","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"41ada4ca2726cde4b3cd750da9e41542","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/e980f980-e781-417d-9ddd-b09d5ff81511"},{"config":{"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/77ad2e87-f862-493d-820e-b697753d0f7a"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/ec04c478-ceb1-432d-af69-511652fdbf42"}}},"level":"info","message":"received a callback","requestID":"946a12cd43d05e6d762fd46cfb78e9a4"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"41ada4ca2726cde4b3cd750da9e41542","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/e980f980-e781-417d-9ddd-b09d5ff81511"},{"config":{"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/77ad2e87-f862-493d-820e-b697753d0f7a"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/ec04c478-ceb1-432d-af69-511652fdbf42"}}},"level":"info","message":"received a callback","requestID":"41ada4ca2726cde4b3cd750da9e41542"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"99851e30-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"DELETE /peerconnections/ec04c478-ceb1-432d-af69-511652fdbf42 204 42ms","method":"DELETE","requestID":"99851e30-6a0a-11ef-9b41-2363e6623fc8","responseTime":42,"status":204,"url":"/peerconnections/ec04c478-ceb1-432d-af69-511652fdbf42"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/77ad2e87-f862-493d-820e-b697753d0f7a'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/38e35c5f-30b7-4d77-9c5f-47deeb12025d"},"level":"info","message":"Successfully finished experiment","requestID":"623966ff1c93b54d4dc5b20ce9b40f62"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"998f5760-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":612,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:43Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe980f980-e781-417d-9ddd-b09d5ff81511","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"503cb3cb-67ef-4f67-b83f-06b2a64cd496","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377923.0374699} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":612,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.827873,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e980f980-e781-417d-9ddd-b09d5ff81511","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"998f5760-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e980f980-e781-417d-9ddd-b09d5ff81511","object_type":"device","rebac_allow":false,"scope_allow":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":"998f5760-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F38e35c5f-30b7-4d77-9c5f-47deeb12025d': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F38e35c5f-30b7-4d77-9c5f-47deeb12025d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"66eb556b-c5cc-4b1b-a68d-957bfa293088","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377923.0440292} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"998f5760-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/e980f980-e781-417d-9ddd-b09d5ff81511/signaling 200 15ms","method":"POST","requestID":"998f5760-6a0a-11ef-9b41-2363e6623fc8","responseTime":15,"status":200,"url":"/devices/e980f980-e781-417d-9ddd-b09d5ff81511/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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d0653345-5393-49a3-ab3b-619c9e35644d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377923.0446382} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"623966ff1c93b54d4dc5b20ce9b40f62","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9991ef70-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":613,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:43Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F77ad2e87-f862-493d-820e-b697753d0f7a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"28b6272e-bad4-4ee8-aa80-364a01678404","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377923.0544434} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":613,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.329908,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/77ad2e87-f862-493d-820e-b697753d0f7a","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9991ef70-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/77ad2e87-f862-493d-820e-b697753d0f7a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"9991ef70-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9991ef70-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/77ad2e87-f862-493d-820e-b697753d0f7a/signaling 200 14ms","method":"POST","requestID":"9991ef70-6a0a-11ef-9b41-2363e6623fc8","responseTime":14,"status":200,"url":"/devices/77ad2e87-f862-493d-820e-b697753d0f7a/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/38e35c5f-30b7-4d77-9c5f-47deeb12025d","requestID":"623966ff1c93b54d4dc5b20ce9b40f62"} gateway-1 | {"time_local":"03/Sep/2024:15:38:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/38e35c5f-30b7-4d77-9c5f-47deeb12025d HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.159","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"623966ff1c93b54d4dc5b20ce9b40f62"} experiment-1 | {"level":"info","message":"DELETE /experiments/38e35c5f-30b7-4d77-9c5f-47deeb12025d 204 156ms","method":"DELETE","requestID":"623966ff1c93b54d4dc5b20ce9b40f62","responseTime":156,"status":204,"url":"/experiments/38e35c5f-30b7-4d77-9c5f-47deeb12025d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 122ms","method":"POST","requestID":"946a12cd43d05e6d762fd46cfb78e9a4","responseTime":122,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.125","http_referrer":"","http_user_agent":"node-fetch","requestID":"946a12cd43d05e6d762fd46cfb78e9a4"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 122ms","method":"POST","requestID":"41ada4ca2726cde4b3cd750da9e41542","responseTime":122,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.127","http_referrer":"","http_user_agent":"node-fetch","requestID":"41ada4ca2726cde4b3cd750da9e41542"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyM30.XXHEv4AnUu3MRuoff7yxbe62mbWS_wefh-oMYSmSDaY","level":"info","message":"auth send jwt","requestID":"e4cb8b46b1fa0db2bec31a005ca7d19c"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"e4cb8b46b1fa0db2bec31a005ca7d19c","responseTime":7,"status":200,"url":"/auth"} gateway-1 | {"time_local":"03/Sep/2024:15:38:43 +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.684","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"f615b0fc09d63fe1860e249d7d8098db"} gateway-1 | {"time_local":"03/Sep/2024:15:38:43 +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.709","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"43d6ab9f22c1401d98245b590937cbc0"} device-1 | {"level":"info","message":"postDevices called","requestID":"e4cb8b46b1fa0db2bec31a005ca7d19c"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":614,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:43Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":614,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.91879,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:43Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"e4cb8b46b1fa0db2bec31a005ca7d19c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377923,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyM30.XXHEv4AnUu3MRuoff7yxbe62mbWS_wefh-oMYSmSDaY"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/77ad2e87-f862-493d-820e-b697753d0f7a' closed"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e4cb8b46b1fa0db2bec31a005ca7d19c","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/e980f980-e781-417d-9ddd-b09d5ff81511' 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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f45f066-c8da-4b3a-b430-4c82d05d0ca1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7c171af2-598c-4a08-979d-9b0e2b1c4d53","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377923.1433933} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e4cb8b46b1fa0db2bec31a005ca7d19c","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0b7a6040-ba98-4cb6-86e5-6950c4089cdc","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377923.147574} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"e4cb8b46b1fa0db2bec31a005ca7d19c","responseTime":2,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f45f066-c8da-4b3a-b430-4c82d05d0ca1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"68bd09c3-64ba-4200-b7bd-2f6155f5a865","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377923.1579268} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3577132f-25a0-4945-844c-2d30c0051dfc","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377923.1580653} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"e4cb8b46b1fa0db2bec31a005ca7d19c","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f45f066-c8da-4b3a-b430-4c82d05d0ca1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f45f066-c8da-4b3a-b430-4c82d05d0ca1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:43.157906135Z"}]},"request_id":"e0a481e3-6a18-4884-90f6-6871b1562c15","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377923.161671} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e4cb8b46b1fa0db2bec31a005ca7d19c","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e4cb8b46b1fa0db2bec31a005ca7d19c"} gateway-1 | {"time_local":"03/Sep/2024:15:38:43 +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":"e4cb8b46b1fa0db2bec31a005ca7d19c"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"e4cb8b46b1fa0db2bec31a005ca7d19c","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyM30.XXHEv4AnUu3MRuoff7yxbe62mbWS_wefh-oMYSmSDaY","level":"info","message":"auth send jwt","requestID":"5549db31ce712e627b4d808a43ad0d18"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5549db31ce712e627b4d808a43ad0d18","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"5549db31ce712e627b4d808a43ad0d18"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":615,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:43Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":615,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.111616,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:43Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"5549db31ce712e627b4d808a43ad0d18","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377923,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyM30.XXHEv4AnUu3MRuoff7yxbe62mbWS_wefh-oMYSmSDaY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5549db31ce712e627b4d808a43ad0d18","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10718bd0-361b-42df-9c19-c650c2cd4102","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d686ad36-2a67-4d41-b1c9-7ebd1b2cd137","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377923.1875093} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5549db31ce712e627b4d808a43ad0d18","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"61d3626b-dc78-4f19-a27f-8955341a7fbe","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377923.1922667} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"5549db31ce712e627b4d808a43ad0d18","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10718bd0-361b-42df-9c19-c650c2cd4102","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"80702be3-ef8f-40df-853b-cdeab6cc523c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377923.2033951} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"58855bd9-c89e-4fe8-9c3e-4d984cf56246","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377923.2047517} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"5549db31ce712e627b4d808a43ad0d18","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10718bd0-361b-42df-9c19-c650c2cd4102","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10718bd0-361b-42df-9c19-c650c2cd4102","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:43.203359218Z"}]},"request_id":"012af682-1444-4962-ba35-2cd2b83f18c2","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377923.210139} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"5549db31ce712e627b4d808a43ad0d18","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"5549db31ce712e627b4d808a43ad0d18"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"5549db31ce712e627b4d808a43ad0d18","responseTime":44,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"03/Sep/2024:15:38:43 +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":"5549db31ce712e627b4d808a43ad0d18"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyM30.XXHEv4AnUu3MRuoff7yxbe62mbWS_wefh-oMYSmSDaY","level":"info","message":"auth send jwt","requestID":"4baff9506a927f23139724da7848c10a"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4baff9506a927f23139724da7848c10a","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4baff9506a927f23139724da7848c10a"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":616,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:43Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":616,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.901957,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/10718bd0-361b-42df-9c19-c650c2cd4102","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"4baff9506a927f23139724da7848c10a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/10718bd0-361b-42df-9c19-c650c2cd4102","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377923,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyM30.XXHEv4AnUu3MRuoff7yxbe62mbWS_wefh-oMYSmSDaY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4baff9506a927f23139724da7848c10a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10718bd0-361b-42df-9c19-c650c2cd4102","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10718bd0-361b-42df-9c19-c650c2cd4102","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:43.203359218Z"}]},"request_id":"3710d468-21ba-43fe-9306-0255505479e5","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377923.6738844} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4baff9506a927f23139724da7848c10a","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0064c2e6-c765-4e87-b595-63b0e526064c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377923.681445} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"4baff9506a927f23139724da7848c10a","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10718bd0-361b-42df-9c19-c650c2cd4102","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10718bd0-361b-42df-9c19-c650c2cd4102","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:43.203359218Z"}]},"request_id":"eb47928a-704d-40a8-af22-4e20f6f16533","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377923.6946476} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4baff9506a927f23139724da7848c10a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4baff9506a927f23139724da7848c10a"} device-1 | {"level":"info","message":"PATCH /devices/10718bd0-361b-42df-9c19-c650c2cd4102 200 37ms","method":"PATCH","requestID":"4baff9506a927f23139724da7848c10a","responseTime":37,"status":200,"url":"/devices/10718bd0-361b-42df-9c19-c650c2cd4102"} gateway-1 | {"time_local":"03/Sep/2024:15:38:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/10718bd0-361b-42df-9c19-c650c2cd4102 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.041","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"4baff9506a927f23139724da7848c10a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyM30.XXHEv4AnUu3MRuoff7yxbe62mbWS_wefh-oMYSmSDaY","level":"info","message":"auth send jwt","requestID":"0eeab113bda4a825271da719dc9bfde1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0eeab113bda4a825271da719dc9bfde1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0eeab113bda4a825271da719dc9bfde1"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":617,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:43Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":617,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.083066,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/10718bd0-361b-42df-9c19-c650c2cd4102","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"0eeab113bda4a825271da719dc9bfde1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/10718bd0-361b-42df-9c19-c650c2cd4102","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377923,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyM30.XXHEv4AnUu3MRuoff7yxbe62mbWS_wefh-oMYSmSDaY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0eeab113bda4a825271da719dc9bfde1","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0eeab113bda4a825271da719dc9bfde1"} gateway-1 | {"time_local":"03/Sep/2024:15:38:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/10718bd0-361b-42df-9c19-c650c2cd4102/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"0eeab113bda4a825271da719dc9bfde1"} device-1 | {"level":"info","message":"POST /devices/10718bd0-361b-42df-9c19-c650c2cd4102/websocket 200 20ms","method":"POST","requestID":"0eeab113bda4a825271da719dc9bfde1","responseTime":20,"status":200,"url":"/devices/10718bd0-361b-42df-9c19-c650c2cd4102/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/10718bd0-361b-42df-9c19-c650c2cd4102' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2b22773130f09647327daeabfbe66833","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2b22773130f09647327daeabfbe66833","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"03/Sep/2024:15:38:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1/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":"2b22773130f09647327daeabfbe66833"} device-1 | {"level":"info","message":"OPTIONS /devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1/websocket 200 1ms","method":"OPTIONS","requestID":"2b22773130f09647327daeabfbe66833","responseTime":1,"status":200,"url":"/devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyNX0.64JqVYstoZTHH4UYUslZnk98VcwXukVepxiQItgm4Ro","level":"info","message":"auth send jwt","requestID":"14c979fb49af9f50d6e5b3db931e641a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"14c979fb49af9f50d6e5b3db931e641a","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"14c979fb49af9f50d6e5b3db931e641a"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":618,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:45Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":618,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.234509,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:45Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"14c979fb49af9f50d6e5b3db931e641a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377925,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyNX0.64JqVYstoZTHH4UYUslZnk98VcwXukVepxiQItgm4Ro"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"14c979fb49af9f50d6e5b3db931e641a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"14c979fb49af9f50d6e5b3db931e641a"} device-1 | {"level":"info","message":"POST /devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1/websocket 200 23ms","method":"POST","requestID":"14c979fb49af9f50d6e5b3db931e641a","responseTime":23,"status":200,"url":"/devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1/websocket"} gateway-1 | {"time_local":"03/Sep/2024:15:38:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1/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":"14c979fb49af9f50d6e5b3db931e641a"} device-1 | {"level":"info","message":"device 'http://localhost/devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyNX0.64JqVYstoZTHH4UYUslZnk98VcwXukVepxiQItgm4Ro","level":"info","message":"auth send jwt","requestID":"4b7abc1c35bdd5ce6e962b2632b30e76"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4b7abc1c35bdd5ce6e962b2632b30e76","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4b7abc1c35bdd5ce6e962b2632b30e76"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":619,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:45Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":619,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.830178,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"4b7abc1c35bdd5ce6e962b2632b30e76","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377925,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyNX0.64JqVYstoZTHH4UYUslZnk98VcwXukVepxiQItgm4Ro"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4b7abc1c35bdd5ce6e962b2632b30e76","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f45f066-c8da-4b3a-b430-4c82d05d0ca1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f45f066-c8da-4b3a-b430-4c82d05d0ca1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:43.157906135Z"}]},"request_id":"70353603-4afd-41f6-8710-0c3a4a71884e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377925.313676} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4b7abc1c35bdd5ce6e962b2632b30e76","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4b7abc1c35bdd5ce6e962b2632b30e76"} gateway-1 | {"time_local":"03/Sep/2024:15:38:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1? 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":"4b7abc1c35bdd5ce6e962b2632b30e76"} device-1 | {"level":"info","message":"GET /devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1? 200 18ms","method":"GET","requestID":"4b7abc1c35bdd5ce6e962b2632b30e76","responseTime":18,"status":200,"url":"/devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyNX0.64JqVYstoZTHH4UYUslZnk98VcwXukVepxiQItgm4Ro","level":"info","message":"auth send jwt","requestID":"a3ec92081342e69739d62263a757f70c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a3ec92081342e69739d62263a757f70c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a3ec92081342e69739d62263a757f70c"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":620,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:45Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":620,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.167049,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/10718bd0-361b-42df-9c19-c650c2cd4102","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a3ec92081342e69739d62263a757f70c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/10718bd0-361b-42df-9c19-c650c2cd4102","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377925,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyNX0.64JqVYstoZTHH4UYUslZnk98VcwXukVepxiQItgm4Ro"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a3ec92081342e69739d62263a757f70c","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10718bd0-361b-42df-9c19-c650c2cd4102","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10718bd0-361b-42df-9c19-c650c2cd4102","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:43.203359218Z"}]},"request_id":"500c6dc1-dc15-42f0-8e05-1e2efa0f5536","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377925.3391275} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a3ec92081342e69739d62263a757f70c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a3ec92081342e69739d62263a757f70c"} gateway-1 | {"time_local":"03/Sep/2024:15:38:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/10718bd0-361b-42df-9c19-c650c2cd4102? 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":"a3ec92081342e69739d62263a757f70c"} device-1 | {"level":"info","message":"GET /devices/10718bd0-361b-42df-9c19-c650c2cd4102? 200 19ms","method":"GET","requestID":"a3ec92081342e69739d62263a757f70c","responseTime":19,"status":200,"url":"/devices/10718bd0-361b-42df-9c19-c650c2cd4102?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyNX0.64JqVYstoZTHH4UYUslZnk98VcwXukVepxiQItgm4Ro","level":"info","message":"auth send jwt","requestID":"c64646417b13e29cbda699a3d177d5d1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c64646417b13e29cbda699a3d177d5d1","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"c64646417b13e29cbda699a3d177d5d1"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":621,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:45Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":621,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.401766,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:45Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"c64646417b13e29cbda699a3d177d5d1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377925,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyNX0.64JqVYstoZTHH4UYUslZnk98VcwXukVepxiQItgm4Ro"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c64646417b13e29cbda699a3d177d5d1","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b73f7944-4ebb-4245-a569-b1484f61cf26"},"level":"info","message":"Attempting to run experiment","requestID":"c64646417b13e29cbda699a3d177d5d1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b73f7944-4ebb-4245-a569-b1484f61cf26"},"level":"info","message":"Attempting to book experiment","requestID":"c64646417b13e29cbda699a3d177d5d1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b73f7944-4ebb-4245-a569-b1484f61cf26"},"level":"info","message":"Successfully booked experiment","requestID":"c64646417b13e29cbda699a3d177d5d1"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9af8ab60-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9af8f980-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":622,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:45Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":622,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.950223,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:45Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":623,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9af8ab60-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377925,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyNX0.64JqVYstoZTHH4UYUslZnk98VcwXukVepxiQItgm4Ro"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9af8ab60-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":623,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.190795,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/10718bd0-361b-42df-9c19-c650c2cd4102","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9af8f980-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/10718bd0-361b-42df-9c19-c650c2cd4102","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377925,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyNX0.64JqVYstoZTHH4UYUslZnk98VcwXukVepxiQItgm4Ro"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9af8f980-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f45f066-c8da-4b3a-b430-4c82d05d0ca1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f45f066-c8da-4b3a-b430-4c82d05d0ca1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:43.157906135Z"}]},"request_id":"cd9c7708-b48a-41f8-8e10-3b9e0b84f06d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377925.4074862} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9af8ab60-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10718bd0-361b-42df-9c19-c650c2cd4102","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10718bd0-361b-42df-9c19-c650c2cd4102","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:43.203359218Z"}]},"request_id":"97008d33-7404-440b-8d00-c0e2bded4997","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377925.4085348} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"9af8f980-6a0a-11ef-9b41-2363e6623fc8","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9af8ab60-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1? 200 16ms","method":"GET","requestID":"9af8ab60-6a0a-11ef-9b41-2363e6623fc8","responseTime":16,"status":200,"url":"/devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9af8f980-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/10718bd0-361b-42df-9c19-c650c2cd4102? 200 15ms","method":"GET","requestID":"9af8f980-6a0a-11ef-9b41-2363e6623fc8","responseTime":15,"status":200,"url":"/devices/10718bd0-361b-42df-9c19-c650c2cd4102?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b73f7944-4ebb-4245-a569-b1484f61cf26"},"level":"info","message":"Setting up experiment","requestID":"c64646417b13e29cbda699a3d177d5d1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b73f7944-4ebb-4245-a569-b1484f61cf26"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"c64646417b13e29cbda699a3d177d5d1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b73f7944-4ebb-4245-a569-b1484f61cf26"},"level":"info","message":"Successfully locked booking for experiment","requestID":"c64646417b13e29cbda699a3d177d5d1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b73f7944-4ebb-4245-a569-b1484f61cf26"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"c64646417b13e29cbda699a3d177d5d1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b73f7944-4ebb-4245-a569-b1484f61cf26"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"c64646417b13e29cbda699a3d177d5d1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b73f7944-4ebb-4245-a569-b1484f61cf26"},"level":"info","message":"Attempting to update booking for experiment","requestID":"c64646417b13e29cbda699a3d177d5d1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b73f7944-4ebb-4245-a569-b1484f61cf26"},"level":"info","message":"Successfully updated booking for experiment","requestID":"c64646417b13e29cbda699a3d177d5d1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b73f7944-4ebb-4245-a569-b1484f61cf26"},"level":"info","message":"Successfully set up experiment","requestID":"c64646417b13e29cbda699a3d177d5d1"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9b03cef0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9b041d10-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9b046b30-6a0a-11ef-9b41-2363e6623fc8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b73f7944-4ebb-4245-a569-b1484f61cf26"},"level":"info","message":"Successfully running experiment","requestID":"c64646417b13e29cbda699a3d177d5d1"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Received request.","req_id":624,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:45Z"} authorization-1 | {"client_addr":"127.0.0.1:60948","level":"info","msg":"Sent response.","req_id":624,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.38669,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:45Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":625,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9b03cef0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377925,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyNX0.64JqVYstoZTHH4UYUslZnk98VcwXukVepxiQItgm4Ro"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"9b03cef0-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":625,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.253335,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/10718bd0-361b-42df-9c19-c650c2cd4102","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9b041d10-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/10718bd0-361b-42df-9c19-c650c2cd4102","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377925,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyNX0.64JqVYstoZTHH4UYUslZnk98VcwXukVepxiQItgm4Ro"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"9b041d10-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":626,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:45Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f45f066-c8da-4b3a-b430-4c82d05d0ca1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f45f066-c8da-4b3a-b430-4c82d05d0ca1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:43.157906135Z"}]},"request_id":"3f16ee13-cad9-4f2b-b1c9-913754c05507","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377925.4868407} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"9b03cef0-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10718bd0-361b-42df-9c19-c650c2cd4102","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10718bd0-361b-42df-9c19-c650c2cd4102","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:43.203359218Z"}]},"request_id":"ba082ed3-e684-47a8-8c63-8796dc46ddbb","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377925.4888027} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f45f066-c8da-4b3a-b430-4c82d05d0ca1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9e42977b-9525-4a7d-984f-71ead0b3dca1","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377925.4891698} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9b041d10-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":626,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.527025,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9b046b30-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1","object_type":"device","rebac_allow":false,"scope_allow":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":"9b046b30-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9b03cef0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1? 200 25ms","method":"GET","requestID":"9b03cef0-6a0a-11ef-9b41-2363e6623fc8","responseTime":25,"status":200,"url":"/devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9b041d10-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/10718bd0-361b-42df-9c19-c650c2cd4102? 200 25ms","method":"GET","requestID":"9b041d10-6a0a-11ef-9b41-2363e6623fc8","responseTime":25,"status":200,"url":"/devices/10718bd0-361b-42df-9c19-c650c2cd4102?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9b046b30-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1/signaling 200 24ms","method":"POST","requestID":"9b046b30-6a0a-11ef-9b41-2363e6623fc8","responseTime":24,"status":200,"url":"/devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1/signaling"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb73f7944-4ebb-4245-a569-b1484f61cf26#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb73f7944-4ebb-4245-a569-b1484f61cf26","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"24d249e1-61cd-4ef5-a126-7b7cc88b0e5c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377925.5014975} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9b0862d0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"03e640d4-a9f5-4718-abcf-413d5d60333a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377925.5019653} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"c64646417b13e29cbda699a3d177d5d1","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9b08b0f0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":627,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:45Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":628,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:45Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f45f066-c8da-4b3a-b430-4c82d05d0ca1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"adf30281-f621-4a29-b06f-c607835a1bec","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377925.506394} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":627,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.277068,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9b0862d0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9b0862d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10718bd0-361b-42df-9c19-c650c2cd4102","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1df7a0cd-2d95-4e68-a641-3dc75e9ea9da","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377925.5072405} experiment-1 | {"data":{"experiment":"http://localhost/experiments/b73f7944-4ebb-4245-a569-b1484f61cf26","user":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"c64646417b13e29cbda699a3d177d5d1"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":628,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.187394,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:45Z"} experiment-1 | {"level":"info","message":"POST /experiments? 201 154ms","method":"POST","requestID":"c64646417b13e29cbda699a3d177d5d1","responseTime":154,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"03/Sep/2024:15:38:45 +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":"c64646417b13e29cbda699a3d177d5d1"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/10718bd0-361b-42df-9c19-c650c2cd4102","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9b08b0f0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/10718bd0-361b-42df-9c19-c650c2cd4102","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"9b08b0f0-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9b0862d0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1/signaling 200 14ms","method":"POST","requestID":"9b0862d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":14,"status":200,"url":"/devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9b08b0f0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/10718bd0-361b-42df-9c19-c650c2cd4102/signaling 200 12ms","method":"POST","requestID":"9b08b0f0-6a0a-11ef-9b41-2363e6623fc8","responseTime":12,"status":200,"url":"/devices/10718bd0-361b-42df-9c19-c650c2cd4102/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyNX0.64JqVYstoZTHH4UYUslZnk98VcwXukVepxiQItgm4Ro","level":"info","message":"auth send jwt","requestID":"f43ec33a4e5faee559f49c475732a5d8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f43ec33a4e5faee559f49c475732a5d8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f43ec33a4e5faee559f49c475732a5d8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9b0afae0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":629,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:45Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":629,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.012181,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:45Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":630,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"f43ec33a4e5faee559f49c475732a5d8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377925,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyNX0.64JqVYstoZTHH4UYUslZnk98VcwXukVepxiQItgm4Ro"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f43ec33a4e5faee559f49c475732a5d8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10718bd0-361b-42df-9c19-c650c2cd4102","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ae2cce6a-8ff2-420c-8ccb-9c0b698bff2a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377925.5224175} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":630,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.625942,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/10718bd0-361b-42df-9c19-c650c2cd4102","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9b0afae0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/10718bd0-361b-42df-9c19-c650c2cd4102","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9b0afae0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f45f066-c8da-4b3a-b430-4c82d05d0ca1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f45f066-c8da-4b3a-b430-4c82d05d0ca1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:43.157906135Z"}]},"request_id":"4a3096d9-7fe2-4f56-aae2-71bb96bf3841","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377925.5261383} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9b0afae0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f43ec33a4e5faee559f49c475732a5d8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/10718bd0-361b-42df-9c19-c650c2cd4102/signaling 200 9ms","method":"POST","requestID":"9b0afae0-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/devices/10718bd0-361b-42df-9c19-c650c2cd4102/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b73f7944-4ebb-4245-a569-b1484f61cf26"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"c64646417b13e29cbda699a3d177d5d1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b73f7944-4ebb-4245-a569-b1484f61cf26"},"level":"info","message":"Building connection plan","requestID":"c64646417b13e29cbda699a3d177d5d1"} 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":"d2e317d7-5f0d-43f6-a904-237d72b0fdb9"},{"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":"4206a9d2-c6c4-487b-babd-fb422b2e574e"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"ac36e403-4942-49a7-84ef-67837fc4222d"}]},"level":"info","message":"Built pairwise service configurations","requestID":"c64646417b13e29cbda699a3d177d5d1"} 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/5f45f066-c8da-4b3a-b430-4c82d05d0ca1"},{"config":{"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/10718bd0-361b-42df-9c19-c650c2cd4102"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"c64646417b13e29cbda699a3d177d5d1"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"9b0cf6b0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f43ec33a4e5faee559f49c475732a5d8"} device-1 | {"level":"info","message":"GET /devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1? 200 17ms","method":"GET","requestID":"f43ec33a4e5faee559f49c475732a5d8","responseTime":17,"status":200,"url":"/devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1?"} gateway-1 | {"time_local":"03/Sep/2024:15:38:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1? 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":"f43ec33a4e5faee559f49c475732a5d8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":631,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:45Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":631,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.060078,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:45Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9b0cf6b0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377925,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyNX0.64JqVYstoZTHH4UYUslZnk98VcwXukVepxiQItgm4Ro"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9b0cf6b0-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyNX0.64JqVYstoZTHH4UYUslZnk98VcwXukVepxiQItgm4Ro","level":"info","message":"auth send jwt","requestID":"30ef95b04ed5c359cf5ccf17074fab92"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"30ef95b04ed5c359cf5ccf17074fab92","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"30ef95b04ed5c359cf5ccf17074fab92"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":632,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:45Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":632,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.84396,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/10718bd0-361b-42df-9c19-c650c2cd4102","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"30ef95b04ed5c359cf5ccf17074fab92","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/10718bd0-361b-42df-9c19-c650c2cd4102","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377925,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyNX0.64JqVYstoZTHH4UYUslZnk98VcwXukVepxiQItgm4Ro"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"30ef95b04ed5c359cf5ccf17074fab92","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","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%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"f16ee171-5642-4b31-9d8e-68fb7289fab2","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377925.5479362} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1feb22f8-bdd7-409e-9088-d18048c84c4c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377925.548099} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10718bd0-361b-42df-9c19-c650c2cd4102","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10718bd0-361b-42df-9c19-c650c2cd4102","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:43.203359218Z"}]},"request_id":"697a9930-a307-4a15-b86f-bde37e37b660","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377925.54878} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"9b0cf6b0-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"30ef95b04ed5c359cf5ccf17074fab92","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"30ef95b04ed5c359cf5ccf17074fab92"} device-1 | {"level":"info","message":"GET /devices/10718bd0-361b-42df-9c19-c650c2cd4102? 200 13ms","method":"GET","requestID":"30ef95b04ed5c359cf5ccf17074fab92","responseTime":13,"status":200,"url":"/devices/10718bd0-361b-42df-9c19-c650c2cd4102?"} gateway-1 | {"time_local":"03/Sep/2024:15:38:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/10718bd0-361b-42df-9c19-c650c2cd4102? 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":"30ef95b04ed5c359cf5ccf17074fab92"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"9b0cf6b0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"9b0cf6b0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/15235adf-47ff-47a9-b284-d8b202e6296f'","requestID":"9b0cf6b0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/15235adf-47ff-47a9-b284-d8b202e6296f'","requestID":"9b0cf6b0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"9b0cf6b0-6a0a-11ef-9b41-2363e6623fc8"} 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":"9b0cf6b0-6a0a-11ef-9b41-2363e6623fc8","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":"9b0cf6b0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/15235adf-47ff-47a9-b284-d8b202e6296f","device":"5f45f066-c8da-4b3a-b430-4c82d05d0ca1","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/b73f7944-4ebb-4245-a569-b1484f61cf26"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"c64646417b13e29cbda699a3d177d5d1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9b161e70-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":633,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:45Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f45f066-c8da-4b3a-b430-4c82d05d0ca1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c9cc23b1-4db2-4db0-a6ea-a11752841d57","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377925.5959642} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":633,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.662997,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9b161e70-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9b161e70-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"5f45f066-c8da-4b3a-b430-4c82d05d0ca1","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"5f45f066-c8da-4b3a-b430-4c82d05d0ca1","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9b161e70-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1/signaling 200 10ms","method":"POST","requestID":"9b161e70-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9b17cc20-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":634,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:45Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10718bd0-361b-42df-9c19-c650c2cd4102","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"23275786-8858-42f2-8e20-422296d3cdab","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377925.6071427} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":634,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.731175,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/10718bd0-361b-42df-9c19-c650c2cd4102","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9b17cc20-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/10718bd0-361b-42df-9c19-c650c2cd4102","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9b17cc20-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9b17cc20-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/10718bd0-361b-42df-9c19-c650c2cd4102/signaling 200 8ms","method":"POST","requestID":"9b17cc20-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/devices/10718bd0-361b-42df-9c19-c650c2cd4102/signaling"} device-1 | {"device":"10718bd0-361b-42df-9c19-c650c2cd4102","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":"15235adf-47ff-47a9-b284-d8b202e6296f","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 1694997604669194931 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:3K8D\r\na=ice-pwd:dES+yULoOp7G7dmdZTDaCJlJ\r\na=ice-options:trickle\r\na=fingerprint:sha-256 F6:95:7C:7C:81:FE:0A:2E:5B:A8:BB:6E:4C:BB:93:6C:C3:20:CE:7D:5E:69:3A:55:49:4D:E4:FA:91:F5:AF:37\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"5f45f066-c8da-4b3a-b430-4c82d05d0ca1","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:1563978016 1 udp 2113937151 fb22de52-881a-4de8-8d4c-3adcd8009ca3.local 34998 typ host generation 0 ufrag 3K8D network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"5f45f066-c8da-4b3a-b430-4c82d05d0ca1","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"5f45f066-c8da-4b3a-b430-4c82d05d0ca1","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"10718bd0-361b-42df-9c19-c650c2cd4102","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":"10718bd0-361b-42df-9c19-c650c2cd4102","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":"10718bd0-361b-42df-9c19-c650c2cd4102","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 | {"content":{"candidate":"candidate:3642032991 1 udp 1677729535 141.24.211.56 34998 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 3K8D network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"5f45f066-c8da-4b3a-b430-4c82d05d0ca1","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/15235adf-47ff-47a9-b284-d8b202e6296f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"15235adf-47ff-47a9-b284-d8b202e6296f","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"5f45f066-c8da-4b3a-b430-4c82d05d0ca1","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/5f45f066-c8da-4b3a-b430-4c82d05d0ca1'"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"91ce360ba8540e631d3c7645645f7ad7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"91ce360ba8540e631d3c7645645f7ad7","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/5f45f066-c8da-4b3a-b430-4c82d05d0ca1"},{"config":{"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/10718bd0-361b-42df-9c19-c650c2cd4102"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/15235adf-47ff-47a9-b284-d8b202e6296f"}}},"level":"info","message":"received a callback","requestID":"91ce360ba8540e631d3c7645645f7ad7"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 4ms","method":"POST","requestID":"91ce360ba8540e631d3c7645645f7ad7","responseTime":4,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38: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.007","http_referrer":"","http_user_agent":"node-fetch","requestID":"91ce360ba8540e631d3c7645645f7ad7"} device-1 | {"data":{"peerconnection":"15235adf-47ff-47a9-b284-d8b202e6296f","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"10718bd0-361b-42df-9c19-c650c2cd4102","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":"5f45f066-c8da-4b3a-b430-4c82d05d0ca1","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"10718bd0-361b-42df-9c19-c650c2cd4102","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":"15235adf-47ff-47a9-b284-d8b202e6296f","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"5f45f066-c8da-4b3a-b430-4c82d05d0ca1","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/15235adf-47ff-47a9-b284-d8b202e6296f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"15235adf-47ff-47a9-b284-d8b202e6296f","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fb22f9ecb3454a036b367c9b4f7fd141","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"fb22f9ecb3454a036b367c9b4f7fd141","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/5f45f066-c8da-4b3a-b430-4c82d05d0ca1"},{"config":{"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/10718bd0-361b-42df-9c19-c650c2cd4102"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/15235adf-47ff-47a9-b284-d8b202e6296f"}}},"level":"info","message":"received a callback","requestID":"fb22f9ecb3454a036b367c9b4f7fd141"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"9c55a350-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":635,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:47Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F15235adf-47ff-47a9-b284-d8b202e6296f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eaf0a3f8-0cfd-4353-bb77-3cbfa12c5c1f","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377927.6918538} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":635,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.548167,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/15235adf-47ff-47a9-b284-d8b202e6296f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9c55a350-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/15235adf-47ff-47a9-b284-d8b202e6296f","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":"9c55a350-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"9c55a350-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /peerconnections/15235adf-47ff-47a9-b284-d8b202e6296f 200 13ms","method":"GET","requestID":"9c55a350-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/peerconnections/15235adf-47ff-47a9-b284-d8b202e6296f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 41ms","method":"POST","requestID":"fb22f9ecb3454a036b367c9b4f7fd141","responseTime":41,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38: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.044","http_referrer":"","http_user_agent":"node-fetch","requestID":"fb22f9ecb3454a036b367c9b4f7fd141"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9c5afa80-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":636,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:47Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f45f066-c8da-4b3a-b430-4c82d05d0ca1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4992da7b-b83b-4b02-a822-0c6226435553","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377927.7276485} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":636,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.286007,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9c5afa80-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1","object_type":"device","rebac_allow":false,"scope_allow":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":"9c5afa80-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9c5afa80-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1/signaling 200 15ms","method":"POST","requestID":"9c5afa80-6a0a-11ef-9b41-2363e6623fc8","responseTime":15,"status":200,"url":"/devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9c5db9a0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":637,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:47Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10718bd0-361b-42df-9c19-c650c2cd4102","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"665ff018-8871-4334-b4e3-8b141353b79e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377927.7445796} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":637,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.740551,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/10718bd0-361b-42df-9c19-c650c2cd4102","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9c5db9a0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/10718bd0-361b-42df-9c19-c650c2cd4102","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"9c5db9a0-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9c5db9a0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/10718bd0-361b-42df-9c19-c650c2cd4102/signaling 200 13ms","method":"POST","requestID":"9c5db9a0-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/devices/10718bd0-361b-42df-9c19-c650c2cd4102/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyN30.CwToEzrKiHBojxJQOcTmboeV1RhIcJ4UvhtFYSfF0IU","level":"info","message":"auth send jwt","requestID":"848890605f35f8004bced73258a09aa7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"848890605f35f8004bced73258a09aa7","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/b73f7944-4ebb-4245-a569-b1484f61cf26","requestID":"848890605f35f8004bced73258a09aa7"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":638,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:47Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":638,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.236283,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b73f7944-4ebb-4245-a569-b1484f61cf26","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"848890605f35f8004bced73258a09aa7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/b73f7944-4ebb-4245-a569-b1484f61cf26","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377927,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyN30.CwToEzrKiHBojxJQOcTmboeV1RhIcJ4UvhtFYSfF0IU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"848890605f35f8004bced73258a09aa7","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/b73f7944-4ebb-4245-a569-b1484f61cf26","requestID":"848890605f35f8004bced73258a09aa7"} gateway-1 | {"time_local":"03/Sep/2024:15:38:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/b73f7944-4ebb-4245-a569-b1484f61cf26 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":"848890605f35f8004bced73258a09aa7"} experiment-1 | {"level":"info","message":"GET /experiments/b73f7944-4ebb-4245-a569-b1484f61cf26 200 17ms","method":"GET","requestID":"848890605f35f8004bced73258a09aa7","responseTime":17,"status":200,"url":"/experiments/b73f7944-4ebb-4245-a569-b1484f61cf26"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyN30.CwToEzrKiHBojxJQOcTmboeV1RhIcJ4UvhtFYSfF0IU","level":"info","message":"auth send jwt","requestID":"f9fa254823e7432d4764acb64f24ae2c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f9fa254823e7432d4764acb64f24ae2c","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/b73f7944-4ebb-4245-a569-b1484f61cf26","requestID":"f9fa254823e7432d4764acb64f24ae2c"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":639,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:47Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":639,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.134039,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:47Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b73f7944-4ebb-4245-a569-b1484f61cf26","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"f9fa254823e7432d4764acb64f24ae2c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/b73f7944-4ebb-4245-a569-b1484f61cf26","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377927,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyN30.CwToEzrKiHBojxJQOcTmboeV1RhIcJ4UvhtFYSfF0IU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f9fa254823e7432d4764acb64f24ae2c","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b73f7944-4ebb-4245-a569-b1484f61cf26"},"level":"info","message":"Attempting to finish experiment","requestID":"f9fa254823e7432d4764acb64f24ae2c"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"9c6a63d0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":640,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:47Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":640,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.231245,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:47Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/15235adf-47ff-47a9-b284-d8b202e6296f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9c6a63d0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:http://localhost/peerconnections/15235adf-47ff-47a9-b284-d8b202e6296f","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377927,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyN30.CwToEzrKiHBojxJQOcTmboeV1RhIcJ4UvhtFYSfF0IU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9c6a63d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/15235adf-47ff-47a9-b284-d8b202e6296f","device":"5f45f066-c8da-4b3a-b430-4c82d05d0ca1","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"10718bd0-361b-42df-9c19-c650c2cd4102","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":"10718bd0-361b-42df-9c19-c650c2cd4102","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":"10718bd0-361b-42df-9c19-c650c2cd4102","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/15235adf-47ff-47a9-b284-d8b202e6296f' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/15235adf-47ff-47a9-b284-d8b202e6296f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"15235adf-47ff-47a9-b284-d8b202e6296f","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"53d1fcea3fffd04e05bde5a4271e5dc1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"53d1fcea3fffd04e05bde5a4271e5dc1","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3ad28ec360f68fd1c279caede1879e49","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/5f45f066-c8da-4b3a-b430-4c82d05d0ca1"},{"config":{"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/10718bd0-361b-42df-9c19-c650c2cd4102"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/15235adf-47ff-47a9-b284-d8b202e6296f"}}},"level":"info","message":"received a callback","requestID":"53d1fcea3fffd04e05bde5a4271e5dc1"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"3ad28ec360f68fd1c279caede1879e49","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F15235adf-47ff-47a9-b284-d8b202e6296f': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F15235adf-47ff-47a9-b284-d8b202e6296f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"17c46126-2a76-4b20-8cca-5c47fac2c420","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377927.85152} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"209ea3bd-9f5d-4e3c-a247-11182896c1db","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377927.8520691} 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/5f45f066-c8da-4b3a-b430-4c82d05d0ca1"},{"config":{"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/10718bd0-361b-42df-9c19-c650c2cd4102"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/15235adf-47ff-47a9-b284-d8b202e6296f"}}},"level":"info","message":"received a callback","requestID":"3ad28ec360f68fd1c279caede1879e49"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"9c6a63d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":17,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"15235adf-47ff-47a9-b284-d8b202e6296f","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"9c6a63d0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"DELETE /peerconnections/15235adf-47ff-47a9-b284-d8b202e6296f 204 50ms","method":"DELETE","requestID":"9c6a63d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":50,"status":204,"url":"/peerconnections/15235adf-47ff-47a9-b284-d8b202e6296f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b73f7944-4ebb-4245-a569-b1484f61cf26"},"level":"info","message":"Successfully finished experiment","requestID":"f9fa254823e7432d4764acb64f24ae2c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9c75ae70-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":641,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:47Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f45f066-c8da-4b3a-b430-4c82d05d0ca1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6edb89d7-c833-4802-aed5-e0b8d6f6e351","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377927.9021282} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":641,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.065557,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9c75ae70-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"9c75ae70-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb73f7944-4ebb-4245-a569-b1484f61cf26': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb73f7944-4ebb-4245-a569-b1484f61cf26","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"71e46656-b517-43c8-b512-40e93de5b203","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377927.907963} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9c75ae70-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1/signaling 200 14ms","method":"POST","requestID":"9c75ae70-6a0a-11ef-9b41-2363e6623fc8","responseTime":14,"status":200,"url":"/devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1/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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"00744cad-1d68-41c0-9264-7c47a1500d58","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377927.9085445} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"f9fa254823e7432d4764acb64f24ae2c","responseTime":17,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9c784680-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":642,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:47Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10718bd0-361b-42df-9c19-c650c2cd4102","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"25a71612-8c97-4d2a-ab99-0ea4f2aec8d8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377927.9187822} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":642,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.938525,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/10718bd0-361b-42df-9c19-c650c2cd4102","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9c784680-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/10718bd0-361b-42df-9c19-c650c2cd4102","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"9c784680-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9c784680-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/10718bd0-361b-42df-9c19-c650c2cd4102/signaling 200 14ms","method":"POST","requestID":"9c784680-6a0a-11ef-9b41-2363e6623fc8","responseTime":14,"status":200,"url":"/devices/10718bd0-361b-42df-9c19-c650c2cd4102/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/b73f7944-4ebb-4245-a569-b1484f61cf26","requestID":"f9fa254823e7432d4764acb64f24ae2c"} gateway-1 | {"time_local":"03/Sep/2024:15:38:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/b73f7944-4ebb-4245-a569-b1484f61cf26 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.173","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f9fa254823e7432d4764acb64f24ae2c"} experiment-1 | {"level":"info","message":"DELETE /experiments/b73f7944-4ebb-4245-a569-b1484f61cf26 204 169ms","method":"DELETE","requestID":"f9fa254823e7432d4764acb64f24ae2c","responseTime":169,"status":204,"url":"/experiments/b73f7944-4ebb-4245-a569-b1484f61cf26"} gateway-1 | {"time_local":"03/Sep/2024:15:38:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2799","request_time":"4.251","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"0ce7e37f22447b30509e2b50190f974f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 127ms","method":"POST","requestID":"53d1fcea3fffd04e05bde5a4271e5dc1","responseTime":127,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38: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.131","http_referrer":"","http_user_agent":"node-fetch","requestID":"53d1fcea3fffd04e05bde5a4271e5dc1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 126ms","method":"POST","requestID":"3ad28ec360f68fd1c279caede1879e49","responseTime":126,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyN30.CwToEzrKiHBojxJQOcTmboeV1RhIcJ4UvhtFYSfF0IU","level":"info","message":"auth send jwt","requestID":"2904d641349e5dee046c3e980be5fe96"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2904d641349e5dee046c3e980be5fe96","responseTime":4,"status":200,"url":"/auth"} gateway-1 | {"time_local":"03/Sep/2024:15:38: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.134","http_referrer":"","http_user_agent":"node-fetch","requestID":"3ad28ec360f68fd1c279caede1879e49"} device-1 | {"level":"info","message":"postDevices called","requestID":"2904d641349e5dee046c3e980be5fe96"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":643,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:47Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":643,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.782141,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:47Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"2904d641349e5dee046c3e980be5fe96","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377927,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyN30.CwToEzrKiHBojxJQOcTmboeV1RhIcJ4UvhtFYSfF0IU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2904d641349e5dee046c3e980be5fe96","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"03/Sep/2024:15:38:47 +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.711","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"91e1a92d8a1f10ecafa0cbc7338e4e01"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/10718bd0-361b-42df-9c19-c650c2cd4102' 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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F680d9331-a779-4716-8257-bc2efc874c11","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d56d4fe4-e570-47fa-b3a2-8418ecb6bc66","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377928.0019898} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2904d641349e5dee046c3e980be5fe96","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f0cf868f-244e-4fac-8420-3b918bbab1c4","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377928.0068896} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/5f45f066-c8da-4b3a-b430-4c82d05d0ca1' closed"} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"2904d641349e5dee046c3e980be5fe96","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F680d9331-a779-4716-8257-bc2efc874c11","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"4c239964-e7eb-406b-89a4-462361599c23","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377928.0154874} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ee715904-c765-454f-9f15-c395675fc220","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377928.0156722} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"2904d641349e5dee046c3e980be5fe96","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F680d9331-a779-4716-8257-bc2efc874c11","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F680d9331-a779-4716-8257-bc2efc874c11","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:48.015461018Z"}]},"request_id":"c069b75d-3690-4612-93f7-c4e392f846db","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377928.0198567} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"2904d641349e5dee046c3e980be5fe96","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2904d641349e5dee046c3e980be5fe96"} gateway-1 | {"time_local":"03/Sep/2024:15:38: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.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2904d641349e5dee046c3e980be5fe96"} device-1 | {"level":"info","message":"POST /devices? 201 40ms","method":"POST","requestID":"2904d641349e5dee046c3e980be5fe96","responseTime":40,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyOH0.DnfFKJHF4PQIG58oOH-hjmAqpGKVUENl20y_VR-UIDM","level":"info","message":"auth send jwt","requestID":"bd8dbc7259f99ac1198f98f2d13d1f25"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bd8dbc7259f99ac1198f98f2d13d1f25","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"bd8dbc7259f99ac1198f98f2d13d1f25"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":644,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:48Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":644,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.291679,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:48Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"bd8dbc7259f99ac1198f98f2d13d1f25","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377928,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyOH0.DnfFKJHF4PQIG58oOH-hjmAqpGKVUENl20y_VR-UIDM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bd8dbc7259f99ac1198f98f2d13d1f25","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5210f6b-1954-4b45-aee1-a631440c6b3b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"63feca10-5288-42b2-bf53-bc911e04f9ce","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377928.0427742} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"bd8dbc7259f99ac1198f98f2d13d1f25","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e86c2450-7f2a-4ddc-8dfb-26e4b8fff4db","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377928.0476375} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"bd8dbc7259f99ac1198f98f2d13d1f25","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5210f6b-1954-4b45-aee1-a631440c6b3b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"d799bdbe-b35a-48c7-8676-7763ad417fc5","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377928.0632987} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"09cfa374-aec9-41ac-81dd-a4e6de324b54","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377928.063411} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"bd8dbc7259f99ac1198f98f2d13d1f25","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5210f6b-1954-4b45-aee1-a631440c6b3b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5210f6b-1954-4b45-aee1-a631440c6b3b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:48.063275216Z"}]},"request_id":"f2d29c92-6c9a-46e1-af78-ecdac734386d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377928.0679872} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"bd8dbc7259f99ac1198f98f2d13d1f25","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"bd8dbc7259f99ac1198f98f2d13d1f25"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"bd8dbc7259f99ac1198f98f2d13d1f25","responseTime":42,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"03/Sep/2024:15:38:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bd8dbc7259f99ac1198f98f2d13d1f25"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyOH0.DnfFKJHF4PQIG58oOH-hjmAqpGKVUENl20y_VR-UIDM","level":"info","message":"auth send jwt","requestID":"e2ab685c84028c3f00dac948a6b652ec"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e2ab685c84028c3f00dac948a6b652ec","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e2ab685c84028c3f00dac948a6b652ec"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":645,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:48Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":645,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.285308,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:48Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5210f6b-1954-4b45-aee1-a631440c6b3b","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"e2ab685c84028c3f00dac948a6b652ec","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/e5210f6b-1954-4b45-aee1-a631440c6b3b","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377928,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyOH0.DnfFKJHF4PQIG58oOH-hjmAqpGKVUENl20y_VR-UIDM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e2ab685c84028c3f00dac948a6b652ec","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5210f6b-1954-4b45-aee1-a631440c6b3b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5210f6b-1954-4b45-aee1-a631440c6b3b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:48.063275216Z"}]},"request_id":"65ecc328-786f-4497-b9d2-dc44e197240d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377928.5379293} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e2ab685c84028c3f00dac948a6b652ec","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7942ac1d-ac64-471e-9aa4-aa022129b7c8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377928.544864} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e2ab685c84028c3f00dac948a6b652ec","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5210f6b-1954-4b45-aee1-a631440c6b3b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5210f6b-1954-4b45-aee1-a631440c6b3b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:48.063275216Z"}]},"request_id":"d83a37d8-b0dc-4585-a9ba-83b66857c1cf","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377928.5579014} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e2ab685c84028c3f00dac948a6b652ec","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e2ab685c84028c3f00dac948a6b652ec"} device-1 | {"level":"info","message":"PATCH /devices/e5210f6b-1954-4b45-aee1-a631440c6b3b 200 36ms","method":"PATCH","requestID":"e2ab685c84028c3f00dac948a6b652ec","responseTime":36,"status":200,"url":"/devices/e5210f6b-1954-4b45-aee1-a631440c6b3b"} gateway-1 | {"time_local":"03/Sep/2024:15:38:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/e5210f6b-1954-4b45-aee1-a631440c6b3b HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.041","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"e2ab685c84028c3f00dac948a6b652ec"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyOH0.DnfFKJHF4PQIG58oOH-hjmAqpGKVUENl20y_VR-UIDM","level":"info","message":"auth send jwt","requestID":"f7871c5de8ffd1dd629d266865d0f595"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f7871c5de8ffd1dd629d266865d0f595","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f7871c5de8ffd1dd629d266865d0f595"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":646,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:48Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":646,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.266454,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:48Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5210f6b-1954-4b45-aee1-a631440c6b3b","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"f7871c5de8ffd1dd629d266865d0f595","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/e5210f6b-1954-4b45-aee1-a631440c6b3b","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377928,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkyOH0.DnfFKJHF4PQIG58oOH-hjmAqpGKVUENl20y_VR-UIDM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f7871c5de8ffd1dd629d266865d0f595","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f7871c5de8ffd1dd629d266865d0f595"} gateway-1 | {"time_local":"03/Sep/2024:15:38:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/e5210f6b-1954-4b45-aee1-a631440c6b3b/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"f7871c5de8ffd1dd629d266865d0f595"} device-1 | {"level":"info","message":"POST /devices/e5210f6b-1954-4b45-aee1-a631440c6b3b/websocket 200 19ms","method":"POST","requestID":"f7871c5de8ffd1dd629d266865d0f595","responseTime":19,"status":200,"url":"/devices/e5210f6b-1954-4b45-aee1-a631440c6b3b/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/e5210f6b-1954-4b45-aee1-a631440c6b3b' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d0f873bd222915eed29e0603bd13af3e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"d0f873bd222915eed29e0603bd13af3e","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"03/Sep/2024:15:38:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/680d9331-a779-4716-8257-bc2efc874c11/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":"d0f873bd222915eed29e0603bd13af3e"} device-1 | {"level":"info","message":"OPTIONS /devices/680d9331-a779-4716-8257-bc2efc874c11/websocket 200 2ms","method":"OPTIONS","requestID":"d0f873bd222915eed29e0603bd13af3e","responseTime":2,"status":200,"url":"/devices/680d9331-a779-4716-8257-bc2efc874c11/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzMH0.gkP2ZL3Tsht4PwrgDpqT8uRqfijSaBVJkCiSnVhkktE","level":"info","message":"auth send jwt","requestID":"5361174a1314e29d0c02eae1eb8d2f60"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5361174a1314e29d0c02eae1eb8d2f60","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"5361174a1314e29d0c02eae1eb8d2f60"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":647,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:50Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":647,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.435117,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:50Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/680d9331-a779-4716-8257-bc2efc874c11","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"5361174a1314e29d0c02eae1eb8d2f60","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/680d9331-a779-4716-8257-bc2efc874c11","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377930,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzMH0.gkP2ZL3Tsht4PwrgDpqT8uRqfijSaBVJkCiSnVhkktE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5361174a1314e29d0c02eae1eb8d2f60","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"5361174a1314e29d0c02eae1eb8d2f60"} device-1 | {"level":"info","message":"POST /devices/680d9331-a779-4716-8257-bc2efc874c11/websocket 200 22ms","method":"POST","requestID":"5361174a1314e29d0c02eae1eb8d2f60","responseTime":22,"status":200,"url":"/devices/680d9331-a779-4716-8257-bc2efc874c11/websocket"} gateway-1 | {"time_local":"03/Sep/2024:15:38:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/680d9331-a779-4716-8257-bc2efc874c11/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":"5361174a1314e29d0c02eae1eb8d2f60"} device-1 | {"level":"info","message":"device 'http://localhost/devices/680d9331-a779-4716-8257-bc2efc874c11' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzMH0.gkP2ZL3Tsht4PwrgDpqT8uRqfijSaBVJkCiSnVhkktE","level":"info","message":"auth send jwt","requestID":"cbbfdc17d1860bc8d8dc5d310e65ce6b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"cbbfdc17d1860bc8d8dc5d310e65ce6b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cbbfdc17d1860bc8d8dc5d310e65ce6b"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":648,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:50Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":648,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.270851,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/680d9331-a779-4716-8257-bc2efc874c11","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"cbbfdc17d1860bc8d8dc5d310e65ce6b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/680d9331-a779-4716-8257-bc2efc874c11","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377930,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzMH0.gkP2ZL3Tsht4PwrgDpqT8uRqfijSaBVJkCiSnVhkktE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cbbfdc17d1860bc8d8dc5d310e65ce6b","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F680d9331-a779-4716-8257-bc2efc874c11","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F680d9331-a779-4716-8257-bc2efc874c11","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:48.015461018Z"}]},"request_id":"2546a4d5-908a-4c66-9c3e-a314280fb17d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377930.177228} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"cbbfdc17d1860bc8d8dc5d310e65ce6b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cbbfdc17d1860bc8d8dc5d310e65ce6b"} gateway-1 | {"time_local":"03/Sep/2024:15:38:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/680d9331-a779-4716-8257-bc2efc874c11? 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":"cbbfdc17d1860bc8d8dc5d310e65ce6b"} device-1 | {"level":"info","message":"GET /devices/680d9331-a779-4716-8257-bc2efc874c11? 200 16ms","method":"GET","requestID":"cbbfdc17d1860bc8d8dc5d310e65ce6b","responseTime":16,"status":200,"url":"/devices/680d9331-a779-4716-8257-bc2efc874c11?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzMH0.gkP2ZL3Tsht4PwrgDpqT8uRqfijSaBVJkCiSnVhkktE","level":"info","message":"auth send jwt","requestID":"ff2e5a43bafcb13331898570da58a91d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ff2e5a43bafcb13331898570da58a91d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ff2e5a43bafcb13331898570da58a91d"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":649,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:50Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":649,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.148622,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5210f6b-1954-4b45-aee1-a631440c6b3b","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"ff2e5a43bafcb13331898570da58a91d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/e5210f6b-1954-4b45-aee1-a631440c6b3b","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377930,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzMH0.gkP2ZL3Tsht4PwrgDpqT8uRqfijSaBVJkCiSnVhkktE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ff2e5a43bafcb13331898570da58a91d","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5210f6b-1954-4b45-aee1-a631440c6b3b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5210f6b-1954-4b45-aee1-a631440c6b3b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:48.063275216Z"}]},"request_id":"7486a2f0-096a-4ba8-8626-1c8e0bbe7903","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377930.202721} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ff2e5a43bafcb13331898570da58a91d","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ff2e5a43bafcb13331898570da58a91d"} gateway-1 | {"time_local":"03/Sep/2024:15:38:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e5210f6b-1954-4b45-aee1-a631440c6b3b? 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":"ff2e5a43bafcb13331898570da58a91d"} device-1 | {"level":"info","message":"GET /devices/e5210f6b-1954-4b45-aee1-a631440c6b3b? 200 20ms","method":"GET","requestID":"ff2e5a43bafcb13331898570da58a91d","responseTime":20,"status":200,"url":"/devices/e5210f6b-1954-4b45-aee1-a631440c6b3b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzMH0.gkP2ZL3Tsht4PwrgDpqT8uRqfijSaBVJkCiSnVhkktE","level":"info","message":"auth send jwt","requestID":"24fc598bfa9fc8cbc671f4f020195768"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"24fc598bfa9fc8cbc671f4f020195768","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"24fc598bfa9fc8cbc671f4f020195768"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":650,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:50Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":650,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.325814,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:50Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"24fc598bfa9fc8cbc671f4f020195768","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377930,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzMH0.gkP2ZL3Tsht4PwrgDpqT8uRqfijSaBVJkCiSnVhkktE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"24fc598bfa9fc8cbc671f4f020195768","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f994a0e7-dece-45e3-b09a-b3c3c54f7c42"},"level":"info","message":"Attempting to run experiment","requestID":"24fc598bfa9fc8cbc671f4f020195768"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f994a0e7-dece-45e3-b09a-b3c3c54f7c42"},"level":"info","message":"Attempting to book experiment","requestID":"24fc598bfa9fc8cbc671f4f020195768"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f994a0e7-dece-45e3-b09a-b3c3c54f7c42"},"level":"info","message":"Successfully booked experiment","requestID":"24fc598bfa9fc8cbc671f4f020195768"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9ddf0270-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9ddf5090-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":651,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:50Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":651,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.032868,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:50Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":652,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/680d9331-a779-4716-8257-bc2efc874c11","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9ddf0270-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/680d9331-a779-4716-8257-bc2efc874c11","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377930,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzMH0.gkP2ZL3Tsht4PwrgDpqT8uRqfijSaBVJkCiSnVhkktE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9ddf0270-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":652,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.149788,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5210f6b-1954-4b45-aee1-a631440c6b3b","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9ddf5090-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/e5210f6b-1954-4b45-aee1-a631440c6b3b","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377930,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzMH0.gkP2ZL3Tsht4PwrgDpqT8uRqfijSaBVJkCiSnVhkktE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9ddf5090-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F680d9331-a779-4716-8257-bc2efc874c11","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F680d9331-a779-4716-8257-bc2efc874c11","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:48.015461018Z"}]},"request_id":"cbea4018-c184-4bbd-a0f1-e105dc4749a2","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377930.2754216} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"9ddf0270-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5210f6b-1954-4b45-aee1-a631440c6b3b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5210f6b-1954-4b45-aee1-a631440c6b3b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:48.063275216Z"}]},"request_id":"aa3d6a3d-c350-4a9c-a9fe-9eabdc8be113","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377930.2774923} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"9ddf5090-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9ddf0270-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/680d9331-a779-4716-8257-bc2efc874c11? 200 22ms","method":"GET","requestID":"9ddf0270-6a0a-11ef-9b41-2363e6623fc8","responseTime":22,"status":200,"url":"/devices/680d9331-a779-4716-8257-bc2efc874c11?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9ddf5090-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/e5210f6b-1954-4b45-aee1-a631440c6b3b? 200 21ms","method":"GET","requestID":"9ddf5090-6a0a-11ef-9b41-2363e6623fc8","responseTime":21,"status":200,"url":"/devices/e5210f6b-1954-4b45-aee1-a631440c6b3b?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f994a0e7-dece-45e3-b09a-b3c3c54f7c42"},"level":"info","message":"Setting up experiment","requestID":"24fc598bfa9fc8cbc671f4f020195768"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f994a0e7-dece-45e3-b09a-b3c3c54f7c42"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"24fc598bfa9fc8cbc671f4f020195768"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f994a0e7-dece-45e3-b09a-b3c3c54f7c42"},"level":"info","message":"Successfully locked booking for experiment","requestID":"24fc598bfa9fc8cbc671f4f020195768"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f994a0e7-dece-45e3-b09a-b3c3c54f7c42"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"24fc598bfa9fc8cbc671f4f020195768"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f994a0e7-dece-45e3-b09a-b3c3c54f7c42"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"24fc598bfa9fc8cbc671f4f020195768"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f994a0e7-dece-45e3-b09a-b3c3c54f7c42"},"level":"info","message":"Attempting to update booking for experiment","requestID":"24fc598bfa9fc8cbc671f4f020195768"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f994a0e7-dece-45e3-b09a-b3c3c54f7c42"},"level":"info","message":"Successfully updated booking for experiment","requestID":"24fc598bfa9fc8cbc671f4f020195768"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f994a0e7-dece-45e3-b09a-b3c3c54f7c42"},"level":"info","message":"Successfully set up experiment","requestID":"24fc598bfa9fc8cbc671f4f020195768"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9dea7420-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9deac240-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9deb1060-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":653,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:50Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":653,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.940146,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:50Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":654,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:50Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f994a0e7-dece-45e3-b09a-b3c3c54f7c42"},"level":"info","message":"Successfully running experiment","requestID":"24fc598bfa9fc8cbc671f4f020195768"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/680d9331-a779-4716-8257-bc2efc874c11","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9dea7420-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/680d9331-a779-4716-8257-bc2efc874c11","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377930,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzMH0.gkP2ZL3Tsht4PwrgDpqT8uRqfijSaBVJkCiSnVhkktE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9dea7420-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":654,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.076147,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:50Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":655,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5210f6b-1954-4b45-aee1-a631440c6b3b","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9deac240-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/e5210f6b-1954-4b45-aee1-a631440c6b3b","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377930,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzMH0.gkP2ZL3Tsht4PwrgDpqT8uRqfijSaBVJkCiSnVhkktE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"9deac240-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F680d9331-a779-4716-8257-bc2efc874c11","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"22b33fce-3349-473c-aec5-d1db9ae50c4d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377930.3496788} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":655,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.651598,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/680d9331-a779-4716-8257-bc2efc874c11","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9deb1060-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/680d9331-a779-4716-8257-bc2efc874c11","object_type":"device","rebac_allow":false,"scope_allow":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":"9deb1060-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5210f6b-1954-4b45-aee1-a631440c6b3b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5210f6b-1954-4b45-aee1-a631440c6b3b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:48.063275216Z"}]},"request_id":"ab7734b1-af46-45c5-97ba-5563c52fa314","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377930.353283} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F680d9331-a779-4716-8257-bc2efc874c11","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F680d9331-a779-4716-8257-bc2efc874c11","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:48.015461018Z"}]},"request_id":"cde6d670-992e-45ef-b3fc-adc00e992b57","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377930.3544617} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"9deac240-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"9dea7420-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9deb1060-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/680d9331-a779-4716-8257-bc2efc874c11/signaling 200 22ms","method":"POST","requestID":"9deb1060-6a0a-11ef-9b41-2363e6623fc8","responseTime":22,"status":200,"url":"/devices/680d9331-a779-4716-8257-bc2efc874c11/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9deac240-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/e5210f6b-1954-4b45-aee1-a631440c6b3b? 200 26ms","method":"GET","requestID":"9deac240-6a0a-11ef-9b41-2363e6623fc8","responseTime":26,"status":200,"url":"/devices/e5210f6b-1954-4b45-aee1-a631440c6b3b?"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff994a0e7-dece-45e3-b09a-b3c3c54f7c42#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff994a0e7-dece-45e3-b09a-b3c3c54f7c42","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"0aedfa98-d7a4-43f4-adc1-0c3840398d78","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377930.3669617} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9deee0f0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"82764bc0-ab1f-4cfc-88f4-660c7e971011","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377930.3674285} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9dea7420-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"24fc598bfa9fc8cbc671f4f020195768","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"GET /devices/680d9331-a779-4716-8257-bc2efc874c11? 200 31ms","method":"GET","requestID":"9dea7420-6a0a-11ef-9b41-2363e6623fc8","responseTime":31,"status":200,"url":"/devices/680d9331-a779-4716-8257-bc2efc874c11?"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":656,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:50Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5210f6b-1954-4b45-aee1-a631440c6b3b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eb2769ec-2421-4260-80f6-94ab91001fc6","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377930.371685} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":656,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.686008,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5210f6b-1954-4b45-aee1-a631440c6b3b","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9deee0f0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e5210f6b-1954-4b45-aee1-a631440c6b3b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9defcb50-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9deee0f0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":657,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:50Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/f994a0e7-dece-45e3-b09a-b3c3c54f7c42","user":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"24fc598bfa9fc8cbc671f4f020195768"} experiment-1 | {"level":"info","message":"POST /experiments? 201 158ms","method":"POST","requestID":"24fc598bfa9fc8cbc671f4f020195768","responseTime":158,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"03/Sep/2024:15:38:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1215","request_time":"0.167","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"24fc598bfa9fc8cbc671f4f020195768"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9deee0f0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/e5210f6b-1954-4b45-aee1-a631440c6b3b/signaling 200 13ms","method":"POST","requestID":"9deee0f0-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/devices/e5210f6b-1954-4b45-aee1-a631440c6b3b/signaling"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F680d9331-a779-4716-8257-bc2efc874c11","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"06f1b2f0-2671-48a1-95db-e06c17730e48","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377930.3802369} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":657,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.629495,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/680d9331-a779-4716-8257-bc2efc874c11","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9defcb50-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/680d9331-a779-4716-8257-bc2efc874c11","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"9defcb50-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzMH0.gkP2ZL3Tsht4PwrgDpqT8uRqfijSaBVJkCiSnVhkktE","level":"info","message":"auth send jwt","requestID":"5656c00902890d06abd3f5c5ed0600b4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5656c00902890d06abd3f5c5ed0600b4","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5656c00902890d06abd3f5c5ed0600b4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9defcb50-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/680d9331-a779-4716-8257-bc2efc874c11/signaling 200 12ms","method":"POST","requestID":"9defcb50-6a0a-11ef-9b41-2363e6623fc8","responseTime":12,"status":200,"url":"/devices/680d9331-a779-4716-8257-bc2efc874c11/signaling"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":658,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:50Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":658,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.844439,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/680d9331-a779-4716-8257-bc2efc874c11","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"5656c00902890d06abd3f5c5ed0600b4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/680d9331-a779-4716-8257-bc2efc874c11","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377930,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzMH0.gkP2ZL3Tsht4PwrgDpqT8uRqfijSaBVJkCiSnVhkktE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5656c00902890d06abd3f5c5ed0600b4","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9df23c50-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":659,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:50Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F680d9331-a779-4716-8257-bc2efc874c11","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F680d9331-a779-4716-8257-bc2efc874c11","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:48.015461018Z"}]},"request_id":"d9e4d9af-3774-4ace-8dd8-a02ad823db72","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377930.3928072} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"5656c00902890d06abd3f5c5ed0600b4","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5210f6b-1954-4b45-aee1-a631440c6b3b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"866f48f6-4c75-43be-a56d-d3077d1b5b71","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377930.393193} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":659,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.002282,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5210f6b-1954-4b45-aee1-a631440c6b3b","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9df23c50-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e5210f6b-1954-4b45-aee1-a631440c6b3b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9df23c50-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5656c00902890d06abd3f5c5ed0600b4"} gateway-1 | {"time_local":"03/Sep/2024:15:38:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/680d9331-a779-4716-8257-bc2efc874c11? 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":"5656c00902890d06abd3f5c5ed0600b4"} device-1 | {"level":"info","message":"GET /devices/680d9331-a779-4716-8257-bc2efc874c11? 200 13ms","method":"GET","requestID":"5656c00902890d06abd3f5c5ed0600b4","responseTime":13,"status":200,"url":"/devices/680d9331-a779-4716-8257-bc2efc874c11?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9df23c50-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/e5210f6b-1954-4b45-aee1-a631440c6b3b/signaling 200 9ms","method":"POST","requestID":"9df23c50-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/devices/e5210f6b-1954-4b45-aee1-a631440c6b3b/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f994a0e7-dece-45e3-b09a-b3c3c54f7c42"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"24fc598bfa9fc8cbc671f4f020195768"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f994a0e7-dece-45e3-b09a-b3c3c54f7c42"},"level":"info","message":"Building connection plan","requestID":"24fc598bfa9fc8cbc671f4f020195768"} 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":"48f608fc-a1bd-4ada-8a55-a615228f477b"},{"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":"22bd47de-93b7-4fb8-af0e-2234e1431d28"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"0dc24597-185a-4aad-b3a0-a4d89896f0c9"}]},"level":"info","message":"Built pairwise service configurations","requestID":"24fc598bfa9fc8cbc671f4f020195768"} 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/e5210f6b-1954-4b45-aee1-a631440c6b3b"},{"config":{"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/680d9331-a779-4716-8257-bc2efc874c11"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"24fc598bfa9fc8cbc671f4f020195768"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"9df41110-6a0a-11ef-9b41-2363e6623fc8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzMH0.gkP2ZL3Tsht4PwrgDpqT8uRqfijSaBVJkCiSnVhkktE","level":"info","message":"auth send jwt","requestID":"5cf21952dd9b0d35e68427a446829c9a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5cf21952dd9b0d35e68427a446829c9a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5cf21952dd9b0d35e68427a446829c9a"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":660,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:50Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":660,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.788185,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:50Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":661,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:50Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9df41110-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377930,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzMH0.gkP2ZL3Tsht4PwrgDpqT8uRqfijSaBVJkCiSnVhkktE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9df41110-6a0a-11ef-9b41-2363e6623fc8","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":661,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.722236,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5210f6b-1954-4b45-aee1-a631440c6b3b","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"5cf21952dd9b0d35e68427a446829c9a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/e5210f6b-1954-4b45-aee1-a631440c6b3b","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377930,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzMH0.gkP2ZL3Tsht4PwrgDpqT8uRqfijSaBVJkCiSnVhkktE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5cf21952dd9b0d35e68427a446829c9a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5210f6b-1954-4b45-aee1-a631440c6b3b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5210f6b-1954-4b45-aee1-a631440c6b3b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:48.063275216Z"}]},"request_id":"29d4980c-ea06-42ce-a033-7f593981a29b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377930.4099257} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"5cf21952dd9b0d35e68427a446829c9a","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5cf21952dd9b0d35e68427a446829c9a"} gateway-1 | {"time_local":"03/Sep/2024:15:38:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e5210f6b-1954-4b45-aee1-a631440c6b3b? 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":"5cf21952dd9b0d35e68427a446829c9a"} device-1 | {"level":"info","message":"GET /devices/e5210f6b-1954-4b45-aee1-a631440c6b3b? 200 11ms","method":"GET","requestID":"5cf21952dd9b0d35e68427a446829c9a","responseTime":11,"status":200,"url":"/devices/e5210f6b-1954-4b45-aee1-a631440c6b3b?"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","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%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"dcd60d63-2c39-43d1-9e90-a95b021caefc","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377930.414013} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"16a4913c-a457-4d43-9a06-c98e3ed511b9","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377930.414231} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"9df41110-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"9df41110-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"9df41110-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/5b6773ca-66ff-4fc0-b048-aefa92c312a9'","requestID":"9df41110-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/5b6773ca-66ff-4fc0-b048-aefa92c312a9'","requestID":"9df41110-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"9df41110-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 24ms","method":"POST","requestID":"9df41110-6a0a-11ef-9b41-2363e6623fc8","responseTime":24,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"9df41110-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/5b6773ca-66ff-4fc0-b048-aefa92c312a9","device":"680d9331-a779-4716-8257-bc2efc874c11","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/f994a0e7-dece-45e3-b09a-b3c3c54f7c42"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"24fc598bfa9fc8cbc671f4f020195768"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9dfc2760-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":662,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:50Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F680d9331-a779-4716-8257-bc2efc874c11","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2a7128b4-7bb4-47cb-a498-e1c653d0dac8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377930.4586084} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":662,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.645419,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/680d9331-a779-4716-8257-bc2efc874c11","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9dfc2760-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/680d9331-a779-4716-8257-bc2efc874c11","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9dfc2760-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"680d9331-a779-4716-8257-bc2efc874c11","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"680d9331-a779-4716-8257-bc2efc874c11","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9dfc2760-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/680d9331-a779-4716-8257-bc2efc874c11/signaling 200 10ms","method":"POST","requestID":"9dfc2760-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/devices/680d9331-a779-4716-8257-bc2efc874c11/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 4647519122718812062 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:zfl2\r\na=ice-pwd:qO00VFh9QFwf48X2HVzS84zY\r\na=ice-options:trickle\r\na=fingerprint:sha-256 9F:63:63:DA:C0:5E:94:58:04:34:58:B4:9B:79:6B:A9:08:6A:A3:4B:4D:38:4C:C7:10:94:77:6D:DB:68:D7:07\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"680d9331-a779-4716-8257-bc2efc874c11","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9dfe9860-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/680d9331-a779-4716-8257-bc2efc874c11'"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":663,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:50Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5210f6b-1954-4b45-aee1-a631440c6b3b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0ab04e80-1387-45bd-bd83-dbfa270d64a3","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377930.4746146} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":663,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.30909,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5210f6b-1954-4b45-aee1-a631440c6b3b","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9dfe9860-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e5210f6b-1954-4b45-aee1-a631440c6b3b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9dfe9860-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9dfe9860-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/e5210f6b-1954-4b45-aee1-a631440c6b3b/signaling 200 8ms","method":"POST","requestID":"9dfe9860-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/devices/e5210f6b-1954-4b45-aee1-a631440c6b3b/signaling"} device-1 | {"device":"e5210f6b-1954-4b45-aee1-a631440c6b3b","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":"5b6773ca-66ff-4fc0-b048-aefa92c312a9","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"e5210f6b-1954-4b45-aee1-a631440c6b3b","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":"e5210f6b-1954-4b45-aee1-a631440c6b3b","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":"e5210f6b-1954-4b45-aee1-a631440c6b3b","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":"e5210f6b-1954-4b45-aee1-a631440c6b3b","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/5b6773ca-66ff-4fc0-b048-aefa92c312a9' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5b6773ca-66ff-4fc0-b048-aefa92c312a9","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9b1418eebb91b1e3a5805003cbc08efe","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"9b1418eebb91b1e3a5805003cbc08efe","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":"connecting","url":"http://localhost/devices/e5210f6b-1954-4b45-aee1-a631440c6b3b"},{"config":{"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/680d9331-a779-4716-8257-bc2efc874c11"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/5b6773ca-66ff-4fc0-b048-aefa92c312a9"}}},"level":"info","message":"received a callback","requestID":"9b1418eebb91b1e3a5805003cbc08efe"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"9b1418eebb91b1e3a5805003cbc08efe","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"9b1418eebb91b1e3a5805003cbc08efe"} device-1 | {"content":{"candidate":"candidate:4283732875 1 udp 2113937151 de5a92c8-f334-4406-8f89-63a2fdf0004d.local 40331 typ host generation 0 ufrag zfl2 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"680d9331-a779-4716-8257-bc2efc874c11","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2071591412 1 udp 1677729535 141.24.211.56 40331 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag zfl2 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"680d9331-a779-4716-8257-bc2efc874c11","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:678708863 1 udp 33562623 141.24.210.113 50904 typ relay raddr 141.24.211.56 rport 40331 generation 0 ufrag zfl2 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"680d9331-a779-4716-8257-bc2efc874c11","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"680d9331-a779-4716-8257-bc2efc874c11","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"680d9331-a779-4716-8257-bc2efc874c11","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/680d9331-a779-4716-8257-bc2efc874c11'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/680d9331-a779-4716-8257-bc2efc874c11'"} device-1 | {"data":{"peerconnection":"5b6773ca-66ff-4fc0-b048-aefa92c312a9","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"e5210f6b-1954-4b45-aee1-a631440c6b3b","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":"e5210f6b-1954-4b45-aee1-a631440c6b3b","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":"680d9331-a779-4716-8257-bc2efc874c11","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"data":{"peerconnection":"5b6773ca-66ff-4fc0-b048-aefa92c312a9","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/5b6773ca-66ff-4fc0-b048-aefa92c312a9' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5b6773ca-66ff-4fc0-b048-aefa92c312a9","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6c91eee5439608c4c1c68cfc03850b89","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6c91eee5439608c4c1c68cfc03850b89","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/e5210f6b-1954-4b45-aee1-a631440c6b3b"},{"config":{"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/680d9331-a779-4716-8257-bc2efc874c11"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/5b6773ca-66ff-4fc0-b048-aefa92c312a9"}}},"level":"info","message":"received a callback","requestID":"6c91eee5439608c4c1c68cfc03850b89"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"9f389f00-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":664,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:52Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5b6773ca-66ff-4fc0-b048-aefa92c312a9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"36731e1f-0c32-4991-a8f2-dad922d60690","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377932.5325167} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":664,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.524893,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/5b6773ca-66ff-4fc0-b048-aefa92c312a9","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9f389f00-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/5b6773ca-66ff-4fc0-b048-aefa92c312a9","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":"9f389f00-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"9f389f00-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /peerconnections/5b6773ca-66ff-4fc0-b048-aefa92c312a9 200 8ms","method":"GET","requestID":"9f389f00-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/peerconnections/5b6773ca-66ff-4fc0-b048-aefa92c312a9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 27ms","method":"POST","requestID":"6c91eee5439608c4c1c68cfc03850b89","responseTime":27,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.030","http_referrer":"","http_user_agent":"node-fetch","requestID":"6c91eee5439608c4c1c68cfc03850b89"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9f3c4880-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":665,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:52Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5210f6b-1954-4b45-aee1-a631440c6b3b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"76e8def6-7143-4211-9a4b-4d468efe4888","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377932.5563333} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":665,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.143256,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5210f6b-1954-4b45-aee1-a631440c6b3b","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9f3c4880-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e5210f6b-1954-4b45-aee1-a631440c6b3b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9f3c4880-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9f3c4880-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/e5210f6b-1954-4b45-aee1-a631440c6b3b/signaling 200 8ms","method":"POST","requestID":"9f3c4880-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/devices/e5210f6b-1954-4b45-aee1-a631440c6b3b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9f3dcf20-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":666,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:52Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F680d9331-a779-4716-8257-bc2efc874c11","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4a3b8169-5202-4ee5-b527-934c40fbc961","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377932.5668871} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":666,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.062001,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/680d9331-a779-4716-8257-bc2efc874c11","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9f3dcf20-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/680d9331-a779-4716-8257-bc2efc874c11","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9f3dcf20-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9f3dcf20-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/680d9331-a779-4716-8257-bc2efc874c11/signaling 200 10ms","method":"POST","requestID":"9f3dcf20-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/devices/680d9331-a779-4716-8257-bc2efc874c11/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzMn0.uPlAlaiT9R_6hL4xi3qLpshukm9OUBTkVmCun7555ds","level":"info","message":"auth send jwt","requestID":"523a1158712a947e86d4a3af32ee6cfe"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"523a1158712a947e86d4a3af32ee6cfe","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/f994a0e7-dece-45e3-b09a-b3c3c54f7c42","requestID":"523a1158712a947e86d4a3af32ee6cfe"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":667,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:52Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":667,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.308197,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f994a0e7-dece-45e3-b09a-b3c3c54f7c42","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"523a1158712a947e86d4a3af32ee6cfe","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/f994a0e7-dece-45e3-b09a-b3c3c54f7c42","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377932,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzMn0.uPlAlaiT9R_6hL4xi3qLpshukm9OUBTkVmCun7555ds"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"523a1158712a947e86d4a3af32ee6cfe","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/f994a0e7-dece-45e3-b09a-b3c3c54f7c42","requestID":"523a1158712a947e86d4a3af32ee6cfe"} gateway-1 | {"time_local":"03/Sep/2024:15:38:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/f994a0e7-dece-45e3-b09a-b3c3c54f7c42 HTTP/1.1","status": "200","body_bytes_sent":"1288","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"523a1158712a947e86d4a3af32ee6cfe"} experiment-1 | {"level":"info","message":"GET /experiments/f994a0e7-dece-45e3-b09a-b3c3c54f7c42 200 17ms","method":"GET","requestID":"523a1158712a947e86d4a3af32ee6cfe","responseTime":17,"status":200,"url":"/experiments/f994a0e7-dece-45e3-b09a-b3c3c54f7c42"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzMn0.uPlAlaiT9R_6hL4xi3qLpshukm9OUBTkVmCun7555ds","level":"info","message":"auth send jwt","requestID":"1699c33f1a67229f5927be697f82053d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1699c33f1a67229f5927be697f82053d","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/f994a0e7-dece-45e3-b09a-b3c3c54f7c42","requestID":"1699c33f1a67229f5927be697f82053d"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":668,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:52Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":668,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.26368,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:52Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f994a0e7-dece-45e3-b09a-b3c3c54f7c42","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"1699c33f1a67229f5927be697f82053d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/f994a0e7-dece-45e3-b09a-b3c3c54f7c42","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377932,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzMn0.uPlAlaiT9R_6hL4xi3qLpshukm9OUBTkVmCun7555ds"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1699c33f1a67229f5927be697f82053d","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f994a0e7-dece-45e3-b09a-b3c3c54f7c42"},"level":"info","message":"Attempting to finish experiment","requestID":"1699c33f1a67229f5927be697f82053d"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"9f4d8690-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":669,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:52Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":669,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.354624,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:52Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/5b6773ca-66ff-4fc0-b048-aefa92c312a9","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9f4d8690-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:http://localhost/peerconnections/5b6773ca-66ff-4fc0-b048-aefa92c312a9","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377932,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzMn0.uPlAlaiT9R_6hL4xi3qLpshukm9OUBTkVmCun7555ds"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9f4d8690-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/5b6773ca-66ff-4fc0-b048-aefa92c312a9","device":"680d9331-a779-4716-8257-bc2efc874c11","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"e5210f6b-1954-4b45-aee1-a631440c6b3b","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":"e5210f6b-1954-4b45-aee1-a631440c6b3b","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":"e5210f6b-1954-4b45-aee1-a631440c6b3b","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/5b6773ca-66ff-4fc0-b048-aefa92c312a9' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/5b6773ca-66ff-4fc0-b048-aefa92c312a9' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5b6773ca-66ff-4fc0-b048-aefa92c312a9","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5b6773ca-66ff-4fc0-b048-aefa92c312a9': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5b6773ca-66ff-4fc0-b048-aefa92c312a9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"39d61d0f-93c2-400e-a6b3-1210a5ac86db","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377932.691912} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bfbab898-4271-497c-9295-c68bd0d80d37","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377932.6923728} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1fb11b12d996b4caca3e99983a457dec","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"1fb11b12d996b4caca3e99983a457dec","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/e5210f6b-1954-4b45-aee1-a631440c6b3b"},{"config":{"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/680d9331-a779-4716-8257-bc2efc874c11"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/5b6773ca-66ff-4fc0-b048-aefa92c312a9"}}},"level":"info","message":"received a callback","requestID":"1fb11b12d996b4caca3e99983a457dec"} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"9f4d8690-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"80336587e73f5bdb1d464f667346f5c0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"80336587e73f5bdb1d464f667346f5c0","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/e5210f6b-1954-4b45-aee1-a631440c6b3b"},{"config":{"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/680d9331-a779-4716-8257-bc2efc874c11"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/5b6773ca-66ff-4fc0-b048-aefa92c312a9"}}},"level":"info","message":"received a callback","requestID":"80336587e73f5bdb1d464f667346f5c0"} device-1 | {"data":{"peerconnection":"5b6773ca-66ff-4fc0-b048-aefa92c312a9","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"9f4d8690-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"DELETE /peerconnections/5b6773ca-66ff-4fc0-b048-aefa92c312a9 204 52ms","method":"DELETE","requestID":"9f4d8690-6a0a-11ef-9b41-2363e6623fc8","responseTime":52,"status":204,"url":"/peerconnections/5b6773ca-66ff-4fc0-b048-aefa92c312a9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f994a0e7-dece-45e3-b09a-b3c3c54f7c42"},"level":"info","message":"Successfully finished experiment","requestID":"1699c33f1a67229f5927be697f82053d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9f591f50-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":670,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:52Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5210f6b-1954-4b45-aee1-a631440c6b3b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"866f0e68-c40a-4145-afd9-612ec21ef40c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377932.7478728} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":670,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.021165,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5210f6b-1954-4b45-aee1-a631440c6b3b","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9f591f50-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e5210f6b-1954-4b45-aee1-a631440c6b3b","object_type":"device","rebac_allow":false,"scope_allow":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":"9f591f50-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff994a0e7-dece-45e3-b09a-b3c3c54f7c42': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff994a0e7-dece-45e3-b09a-b3c3c54f7c42","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"fcf66ab8-abff-4640-85bd-5de401cfd9ff","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377932.7541437} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9f591f50-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/e5210f6b-1954-4b45-aee1-a631440c6b3b/signaling 200 15ms","method":"POST","requestID":"9f591f50-6a0a-11ef-9b41-2363e6623fc8","responseTime":15,"status":200,"url":"/devices/e5210f6b-1954-4b45-aee1-a631440c6b3b/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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cd6b3541-306d-4c45-b4a0-63f459d7631b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377932.7550156} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"1699c33f1a67229f5927be697f82053d","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9f5c0580-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":671,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:52Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F680d9331-a779-4716-8257-bc2efc874c11","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e3b56d04-d5b3-45ba-820a-349dedc0a110","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377932.7681665} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":671,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.957837,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/680d9331-a779-4716-8257-bc2efc874c11","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9f5c0580-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/680d9331-a779-4716-8257-bc2efc874c11","object_type":"device","rebac_allow":false,"scope_allow":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":"9f5c0580-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9f5c0580-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/680d9331-a779-4716-8257-bc2efc874c11/signaling 200 15ms","method":"POST","requestID":"9f5c0580-6a0a-11ef-9b41-2363e6623fc8","responseTime":15,"status":200,"url":"/devices/680d9331-a779-4716-8257-bc2efc874c11/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/f994a0e7-dece-45e3-b09a-b3c3c54f7c42","requestID":"1699c33f1a67229f5927be697f82053d"} gateway-1 | {"time_local":"03/Sep/2024:15:38:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/f994a0e7-dece-45e3-b09a-b3c3c54f7c42 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.207","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1699c33f1a67229f5927be697f82053d"} gateway-1 | {"time_local":"03/Sep/2024:15:38:52 +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.263","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"1f3ee0d04430ec0a38313ab4b1bd6328"} experiment-1 | {"level":"info","message":"DELETE /experiments/f994a0e7-dece-45e3-b09a-b3c3c54f7c42 204 205ms","method":"DELETE","requestID":"1699c33f1a67229f5927be697f82053d","responseTime":205,"status":204,"url":"/experiments/f994a0e7-dece-45e3-b09a-b3c3c54f7c42"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 163ms","method":"POST","requestID":"1fb11b12d996b4caca3e99983a457dec","responseTime":163,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.167","http_referrer":"","http_user_agent":"node-fetch","requestID":"1fb11b12d996b4caca3e99983a457dec"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 161ms","method":"POST","requestID":"80336587e73f5bdb1d464f667346f5c0","responseTime":161,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.169","http_referrer":"","http_user_agent":"node-fetch","requestID":"80336587e73f5bdb1d464f667346f5c0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzMn0.uPlAlaiT9R_6hL4xi3qLpshukm9OUBTkVmCun7555ds","level":"info","message":"auth send jwt","requestID":"2e837a0036893678e9bef211791866a8"} authentication-1 | {"level":"info","message":"GET /auth 200 9ms","method":"GET","requestID":"2e837a0036893678e9bef211791866a8","responseTime":9,"status":200,"url":"/auth"} gateway-1 | {"time_local":"03/Sep/2024:15:38:52 +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.721","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"d5d52a391646598b6e53e1fcd4f89b24"} device-1 | {"level":"info","message":"postDevices called","requestID":"2e837a0036893678e9bef211791866a8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":672,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:52Z"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/e5210f6b-1954-4b45-aee1-a631440c6b3b' closed"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":672,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.88707,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:52Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"2e837a0036893678e9bef211791866a8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377932,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzMn0.uPlAlaiT9R_6hL4xi3qLpshukm9OUBTkVmCun7555ds"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2e837a0036893678e9bef211791866a8","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/680d9331-a779-4716-8257-bc2efc874c11' 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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff4deaf12-7af7-41c3-b2c6-2252d6f2ade8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"8b028e78-8c18-4aa2-8a1b-427aab74df2b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377932.8853173} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2e837a0036893678e9bef211791866a8","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"41f44500-40b7-4d0c-8a5c-04168a74de82","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377932.8913496} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"2e837a0036893678e9bef211791866a8","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff4deaf12-7af7-41c3-b2c6-2252d6f2ade8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"d6e29b6c-c806-4584-9194-9da1b7634cfd","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377932.9015505} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b2ab919e-c4f6-47f5-a18a-bd0d1368d885","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377932.9017386} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"2e837a0036893678e9bef211791866a8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff4deaf12-7af7-41c3-b2c6-2252d6f2ade8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff4deaf12-7af7-41c3-b2c6-2252d6f2ade8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:52.901521509Z"}]},"request_id":"76eb8ab0-8355-4566-950b-3d409ce48985","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377932.906156} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2e837a0036893678e9bef211791866a8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2e837a0036893678e9bef211791866a8"} gateway-1 | {"time_local":"03/Sep/2024:15:38:52 +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":"2e837a0036893678e9bef211791866a8"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"2e837a0036893678e9bef211791866a8","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzMn0.uPlAlaiT9R_6hL4xi3qLpshukm9OUBTkVmCun7555ds","level":"info","message":"auth send jwt","requestID":"4d01f3c42a3fdf26cd7243668ec490e5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4d01f3c42a3fdf26cd7243668ec490e5","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"4d01f3c42a3fdf26cd7243668ec490e5"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":673,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:52Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":673,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.856996,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:52Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"4d01f3c42a3fdf26cd7243668ec490e5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377932,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzMn0.uPlAlaiT9R_6hL4xi3qLpshukm9OUBTkVmCun7555ds"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4d01f3c42a3fdf26cd7243668ec490e5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7db39663-453b-4c36-a45a-4b30f30dd54a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377932.930367} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4d01f3c42a3fdf26cd7243668ec490e5","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1f269716-83c5-4767-b1eb-070a21f80d8b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377932.935393} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"4d01f3c42a3fdf26cd7243668ec490e5","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"cdf60a62-f5d5-4437-bfca-18405f8f23c6","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377932.94972} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2e1071c9-b499-4e9e-95b6-7ab2ae713212","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377932.949862} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"4d01f3c42a3fdf26cd7243668ec490e5","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:52.949690655Z"}]},"request_id":"834afd7e-eaca-4d70-8428-3f2775f94507","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377932.953396} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"4d01f3c42a3fdf26cd7243668ec490e5","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4d01f3c42a3fdf26cd7243668ec490e5"} gateway-1 | {"time_local":"03/Sep/2024:15:38:52 +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":"4d01f3c42a3fdf26cd7243668ec490e5"} device-1 | {"level":"info","message":"POST /devices? 201 40ms","method":"POST","requestID":"4d01f3c42a3fdf26cd7243668ec490e5","responseTime":40,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzM30.d5ZJ1k3djkgeX11Css3YtKWZyl49iZCp1hYzzJ8rEog","level":"info","message":"auth send jwt","requestID":"97d522fc465a3cc9af7d6a9e5a4a2644"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"97d522fc465a3cc9af7d6a9e5a4a2644","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"97d522fc465a3cc9af7d6a9e5a4a2644"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":674,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:53Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":674,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.335385,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:53Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"97d522fc465a3cc9af7d6a9e5a4a2644","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377933,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzM30.d5ZJ1k3djkgeX11Css3YtKWZyl49iZCp1hYzzJ8rEog"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"97d522fc465a3cc9af7d6a9e5a4a2644","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff4deaf12-7af7-41c3-b2c6-2252d6f2ade8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff4deaf12-7af7-41c3-b2c6-2252d6f2ade8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:52.901521509Z"}]},"request_id":"d0c4cc0b-8548-4d49-bb56-609c46bff015","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377933.4189727} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"97d522fc465a3cc9af7d6a9e5a4a2644","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a66b53dd-4d55-4d8a-b308-9a5c737448d8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377933.4304428} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"97d522fc465a3cc9af7d6a9e5a4a2644","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff4deaf12-7af7-41c3-b2c6-2252d6f2ade8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff4deaf12-7af7-41c3-b2c6-2252d6f2ade8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:52.901521509Z"}]},"request_id":"75ca8675-f41a-4a60-84dc-daa079076944","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377933.4413204} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"97d522fc465a3cc9af7d6a9e5a4a2644","responseTime":9,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"97d522fc465a3cc9af7d6a9e5a4a2644"} gateway-1 | {"time_local":"03/Sep/2024:15:38:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.051","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"97d522fc465a3cc9af7d6a9e5a4a2644"} device-1 | {"level":"info","message":"PATCH /devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8 200 44ms","method":"PATCH","requestID":"97d522fc465a3cc9af7d6a9e5a4a2644","responseTime":44,"status":200,"url":"/devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzM30.d5ZJ1k3djkgeX11Css3YtKWZyl49iZCp1hYzzJ8rEog","level":"info","message":"auth send jwt","requestID":"e1738e9f306019d95a0aab1fb50f9c11"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"e1738e9f306019d95a0aab1fb50f9c11","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e1738e9f306019d95a0aab1fb50f9c11"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":675,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:53Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":675,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.115469,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:53Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"e1738e9f306019d95a0aab1fb50f9c11","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377933,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzM30.d5ZJ1k3djkgeX11Css3YtKWZyl49iZCp1hYzzJ8rEog"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e1738e9f306019d95a0aab1fb50f9c11","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e1738e9f306019d95a0aab1fb50f9c11"} device-1 | {"level":"info","message":"POST /devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8/websocket 200 21ms","method":"POST","requestID":"e1738e9f306019d95a0aab1fb50f9c11","responseTime":21,"status":200,"url":"/devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8/websocket"} gateway-1 | {"time_local":"03/Sep/2024:15:38:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.025","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"e1738e9f306019d95a0aab1fb50f9c11"} device-1 | {"level":"info","message":"device 'http://localhost/devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a0a96e47923e928abe54a32b6af6ab17","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"a0a96e47923e928abe54a32b6af6ab17","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"03/Sep/2024:15:38:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9/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":"a0a96e47923e928abe54a32b6af6ab17"} device-1 | {"level":"info","message":"OPTIONS /devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9/websocket 200 1ms","method":"OPTIONS","requestID":"a0a96e47923e928abe54a32b6af6ab17","responseTime":1,"status":200,"url":"/devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzNH0.c4S6ZX50XhxKnqqzUL--1ISky9VaLGEF-qttNxJEETk","level":"info","message":"auth send jwt","requestID":"aac356aa57ba5dfbe194372e4183b37d"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"aac356aa57ba5dfbe194372e4183b37d","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"aac356aa57ba5dfbe194372e4183b37d"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":676,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:54Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":676,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.310125,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:54Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"aac356aa57ba5dfbe194372e4183b37d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377934,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzNH0.c4S6ZX50XhxKnqqzUL--1ISky9VaLGEF-qttNxJEETk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"aac356aa57ba5dfbe194372e4183b37d","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"aac356aa57ba5dfbe194372e4183b37d"} gateway-1 | {"time_local":"03/Sep/2024:15:38:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9/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":"aac356aa57ba5dfbe194372e4183b37d"} device-1 | {"level":"info","message":"POST /devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9/websocket 200 21ms","method":"POST","requestID":"aac356aa57ba5dfbe194372e4183b37d","responseTime":21,"status":200,"url":"/devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzNX0.VGVB3iFTdlC1JwWIw2WgV0yNjsYtAh0MzqYsMCm2SYo","level":"info","message":"auth send jwt","requestID":"03408e848481ac246cc1e0a74c095816"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"03408e848481ac246cc1e0a74c095816","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"03408e848481ac246cc1e0a74c095816"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":677,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:55Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":677,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.284567,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"03408e848481ac246cc1e0a74c095816","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377935,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzNX0.VGVB3iFTdlC1JwWIw2WgV0yNjsYtAh0MzqYsMCm2SYo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"03408e848481ac246cc1e0a74c095816","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff4deaf12-7af7-41c3-b2c6-2252d6f2ade8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff4deaf12-7af7-41c3-b2c6-2252d6f2ade8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:52.901521509Z"}]},"request_id":"6334b42d-c8aa-4df4-8ca5-ebcc82950e2d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377935.0504627} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"03408e848481ac246cc1e0a74c095816","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"03408e848481ac246cc1e0a74c095816"} device-1 | {"level":"info","message":"GET /devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8? 200 16ms","method":"GET","requestID":"03408e848481ac246cc1e0a74c095816","responseTime":16,"status":200,"url":"/devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8?"} gateway-1 | {"time_local":"03/Sep/2024:15:38:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8? 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":"03408e848481ac246cc1e0a74c095816"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzNX0.VGVB3iFTdlC1JwWIw2WgV0yNjsYtAh0MzqYsMCm2SYo","level":"info","message":"auth send jwt","requestID":"7c215c7b4307a105634432ee25d17879"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7c215c7b4307a105634432ee25d17879","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7c215c7b4307a105634432ee25d17879"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":678,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:55Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":678,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.868056,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"7c215c7b4307a105634432ee25d17879","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377935,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzNX0.VGVB3iFTdlC1JwWIw2WgV0yNjsYtAh0MzqYsMCm2SYo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7c215c7b4307a105634432ee25d17879","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:52.949690655Z"}]},"request_id":"7f72aa11-925b-4606-8908-e863d74b0598","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377935.0712402} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7c215c7b4307a105634432ee25d17879","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7c215c7b4307a105634432ee25d17879"} device-1 | {"level":"info","message":"GET /devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9? 200 15ms","method":"GET","requestID":"7c215c7b4307a105634432ee25d17879","responseTime":15,"status":200,"url":"/devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9?"} gateway-1 | {"time_local":"03/Sep/2024:15:38:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9? 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":"7c215c7b4307a105634432ee25d17879"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzNX0.VGVB3iFTdlC1JwWIw2WgV0yNjsYtAh0MzqYsMCm2SYo","level":"info","message":"auth send jwt","requestID":"c23a0e575e0fd0fd80945575f51e3d25"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c23a0e575e0fd0fd80945575f51e3d25","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"c23a0e575e0fd0fd80945575f51e3d25"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":679,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:55Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":679,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.478266,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:55Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"c23a0e575e0fd0fd80945575f51e3d25","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377935,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzNX0.VGVB3iFTdlC1JwWIw2WgV0yNjsYtAh0MzqYsMCm2SYo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c23a0e575e0fd0fd80945575f51e3d25","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cbb086b-c664-4486-9dd1-45b3ba82c3f8"},"level":"info","message":"Attempting to run experiment","requestID":"c23a0e575e0fd0fd80945575f51e3d25"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cbb086b-c664-4486-9dd1-45b3ba82c3f8"},"level":"info","message":"Attempting to book experiment","requestID":"c23a0e575e0fd0fd80945575f51e3d25"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cbb086b-c664-4486-9dd1-45b3ba82c3f8"},"level":"info","message":"Successfully booked experiment","requestID":"c23a0e575e0fd0fd80945575f51e3d25"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a0c53270-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a0c58090-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":680,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:55Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":680,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.117935,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:55Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":681,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a0c53270-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377935,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzNX0.VGVB3iFTdlC1JwWIw2WgV0yNjsYtAh0MzqYsMCm2SYo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a0c53270-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":681,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.234531,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a0c58090-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377935,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzNX0.VGVB3iFTdlC1JwWIw2WgV0yNjsYtAh0MzqYsMCm2SYo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a0c58090-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff4deaf12-7af7-41c3-b2c6-2252d6f2ade8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff4deaf12-7af7-41c3-b2c6-2252d6f2ade8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:52.901521509Z"}]},"request_id":"e94333c1-7589-4b0e-adaa-7aeaa6132fa8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377935.139388} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"a0c53270-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:52.949690655Z"}]},"request_id":"6ed5848b-fa96-46a3-a9e2-2934635ab87a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377935.1411223} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"a0c58090-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a0c53270-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8? 200 21ms","method":"GET","requestID":"a0c53270-6a0a-11ef-9b41-2363e6623fc8","responseTime":21,"status":200,"url":"/devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a0c58090-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9? 200 20ms","method":"GET","requestID":"a0c58090-6a0a-11ef-9b41-2363e6623fc8","responseTime":20,"status":200,"url":"/devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cbb086b-c664-4486-9dd1-45b3ba82c3f8"},"level":"info","message":"Setting up experiment","requestID":"c23a0e575e0fd0fd80945575f51e3d25"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cbb086b-c664-4486-9dd1-45b3ba82c3f8"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"c23a0e575e0fd0fd80945575f51e3d25"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cbb086b-c664-4486-9dd1-45b3ba82c3f8"},"level":"info","message":"Successfully locked booking for experiment","requestID":"c23a0e575e0fd0fd80945575f51e3d25"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cbb086b-c664-4486-9dd1-45b3ba82c3f8"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"c23a0e575e0fd0fd80945575f51e3d25"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cbb086b-c664-4486-9dd1-45b3ba82c3f8"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"c23a0e575e0fd0fd80945575f51e3d25"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cbb086b-c664-4486-9dd1-45b3ba82c3f8"},"level":"info","message":"Attempting to update booking for experiment","requestID":"c23a0e575e0fd0fd80945575f51e3d25"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cbb086b-c664-4486-9dd1-45b3ba82c3f8"},"level":"info","message":"Successfully updated booking for experiment","requestID":"c23a0e575e0fd0fd80945575f51e3d25"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cbb086b-c664-4486-9dd1-45b3ba82c3f8"},"level":"info","message":"Successfully set up experiment","requestID":"c23a0e575e0fd0fd80945575f51e3d25"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a0d0cb30-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a0d11950-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":682,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:55Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a0d18e80-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":682,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.591043,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:55Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":683,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:55Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cbb086b-c664-4486-9dd1-45b3ba82c3f8"},"level":"info","message":"Successfully running experiment","requestID":"c23a0e575e0fd0fd80945575f51e3d25"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a0d0cb30-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377935,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzNX0.VGVB3iFTdlC1JwWIw2WgV0yNjsYtAh0MzqYsMCm2SYo"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"a0d0cb30-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":683,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.635834,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a0d11950-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377935,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzNX0.VGVB3iFTdlC1JwWIw2WgV0yNjsYtAh0MzqYsMCm2SYo"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"a0d11950-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":684,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:55Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":684,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.504914,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:55Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff4deaf12-7af7-41c3-b2c6-2252d6f2ade8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"80579112-f7d5-4718-95a3-6e2a21094ed5","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377935.219428} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a0d18e80-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8","object_type":"device","rebac_allow":false,"scope_allow":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":"a0d18e80-6a0a-11ef-9b41-2363e6623fc8","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a0d18e80-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:52.949690655Z"}]},"request_id":"c8d1038f-8bad-466a-b240-69a110ab12e7","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377935.2275655} device-1 | {"level":"info","message":"POST /devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8/signaling 200 21ms","method":"POST","requestID":"a0d18e80-6a0a-11ef-9b41-2363e6623fc8","responseTime":21,"status":200,"url":"/devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"a0d11950-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff4deaf12-7af7-41c3-b2c6-2252d6f2ade8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff4deaf12-7af7-41c3-b2c6-2252d6f2ade8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:52.901521509Z"}]},"request_id":"ca1aef1c-9588-4eb6-b716-d3d56ac1b078","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377935.2295122} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a0d0cb30-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a0d58620-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":685,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:55Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a0d11950-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9? 200 34ms","method":"GET","requestID":"a0d11950-6a0a-11ef-9b41-2363e6623fc8","responseTime":34,"status":200,"url":"/devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a0d0cb30-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8? 200 38ms","method":"GET","requestID":"a0d0cb30-6a0a-11ef-9b41-2363e6623fc8","responseTime":38,"status":200,"url":"/devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a0d70cc0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"228aba9d-fc09-4cdf-aedf-6198e9adeeea","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377935.2415583} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":685,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.25229,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a0d58620-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","object_type":"device","rebac_allow":false,"scope_allow":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":"a0d58620-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f5a5e573-37f1-45b1-ad94-396d419f4467","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377935.2448406} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5cbb086b-c664-4486-9dd1-45b3ba82c3f8#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5cbb086b-c664-4486-9dd1-45b3ba82c3f8","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"19f3d112-ae60-4c43-8de6-10507f7d9b28","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377935.2454607} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a0d58620-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9/signaling 200 15ms","method":"POST","requestID":"a0d58620-6a0a-11ef-9b41-2363e6623fc8","responseTime":15,"status":200,"url":"/devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 31ms","method":"POST","requestID":"c23a0e575e0fd0fd80945575f51e3d25","responseTime":31,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":686,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:55Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff4deaf12-7af7-41c3-b2c6-2252d6f2ade8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"203fff5d-f445-44bd-b134-8dae25572b4b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377935.2516794} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":686,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.388225,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a0d70cc0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"a0d70cc0-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a0d70cc0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8/signaling 200 14ms","method":"POST","requestID":"a0d70cc0-6a0a-11ef-9b41-2363e6623fc8","responseTime":14,"status":200,"url":"/devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a0d9a4d0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":687,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:55Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/5cbb086b-c664-4486-9dd1-45b3ba82c3f8","user":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"c23a0e575e0fd0fd80945575f51e3d25"} gateway-1 | {"time_local":"03/Sep/2024:15:38:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1215","request_time":"0.187","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c23a0e575e0fd0fd80945575f51e3d25"} experiment-1 | {"level":"info","message":"POST /experiments? 201 180ms","method":"POST","requestID":"c23a0e575e0fd0fd80945575f51e3d25","responseTime":180,"status":201,"url":"/experiments?"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fe2fbb3a-d245-4923-b56a-7773b52019a6","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377935.2669785} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":687,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.458127,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a0d9a4d0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a0d9a4d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzNX0.VGVB3iFTdlC1JwWIw2WgV0yNjsYtAh0MzqYsMCm2SYo","level":"info","message":"auth send jwt","requestID":"4dbbd39d2239fe69e0132f184110a130"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4dbbd39d2239fe69e0132f184110a130","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a0d9a4d0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9/signaling 200 12ms","method":"POST","requestID":"a0d9a4d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":12,"status":200,"url":"/devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4dbbd39d2239fe69e0132f184110a130"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cbb086b-c664-4486-9dd1-45b3ba82c3f8"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"c23a0e575e0fd0fd80945575f51e3d25"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cbb086b-c664-4486-9dd1-45b3ba82c3f8"},"level":"info","message":"Building connection plan","requestID":"c23a0e575e0fd0fd80945575f51e3d25"} 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":"d3efebf5-c771-46b2-8d21-3e1682851fca"},{"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":"f8bc6eb3-2460-44e8-8e82-f23ca84fa0d4"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"87a59326-af42-460b-82d8-29f72297bfc5"}]},"level":"info","message":"Built pairwise service configurations","requestID":"c23a0e575e0fd0fd80945575f51e3d25"} 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/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8"},{"config":{"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/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"c23a0e575e0fd0fd80945575f51e3d25"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"a0dbeec0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":688,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:55Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":688,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.916279,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:55Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":689,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"4dbbd39d2239fe69e0132f184110a130","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377935,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzNX0.VGVB3iFTdlC1JwWIw2WgV0yNjsYtAh0MzqYsMCm2SYo"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"4dbbd39d2239fe69e0132f184110a130","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":689,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.827107,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:55Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a0dbeec0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377935,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzNX0.VGVB3iFTdlC1JwWIw2WgV0yNjsYtAh0MzqYsMCm2SYo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a0dbeec0-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff4deaf12-7af7-41c3-b2c6-2252d6f2ade8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff4deaf12-7af7-41c3-b2c6-2252d6f2ade8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:52.901521509Z"}]},"request_id":"4976068c-a309-4fbb-b0ae-e3efead88ca5","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377935.2869985} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4dbbd39d2239fe69e0132f184110a130","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4dbbd39d2239fe69e0132f184110a130"} device-1 | {"level":"info","message":"GET /devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8? 200 19ms","method":"GET","requestID":"4dbbd39d2239fe69e0132f184110a130","responseTime":19,"status":200,"url":"/devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8?"} gateway-1 | {"time_local":"03/Sep/2024:15:38:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8? 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":"4dbbd39d2239fe69e0132f184110a130"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","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%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"40fb0408-92f9-4f9a-9ba4-5cd0b5783e09","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377935.293378} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"eaaf1fda-2c23-441b-8750-0bcb3c4e48cc","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377935.2936614} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"a0dbeec0-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/relations/update"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzNX0.VGVB3iFTdlC1JwWIw2WgV0yNjsYtAh0MzqYsMCm2SYo","level":"info","message":"auth send jwt","requestID":"ac4aead48526b348b87ddfc7bf637110"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ac4aead48526b348b87ddfc7bf637110","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ac4aead48526b348b87ddfc7bf637110"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":690,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:55Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":690,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.195596,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"ac4aead48526b348b87ddfc7bf637110","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377935,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzNX0.VGVB3iFTdlC1JwWIw2WgV0yNjsYtAh0MzqYsMCm2SYo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ac4aead48526b348b87ddfc7bf637110","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:52.949690655Z"}]},"request_id":"7396f2e2-3440-404e-ae88-55fc41a174c9","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377935.3071566} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ac4aead48526b348b87ddfc7bf637110","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"a0dbeec0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"a0dbeec0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/4bc53e06-c55c-4e76-9fba-f5aa822be60b'","requestID":"a0dbeec0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/4bc53e06-c55c-4e76-9fba-f5aa822be60b'","requestID":"a0dbeec0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"a0dbeec0-6a0a-11ef-9b41-2363e6623fc8"} 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":"a0dbeec0-6a0a-11ef-9b41-2363e6623fc8","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":"getDevicesByDeviceId succeeded","requestID":"ac4aead48526b348b87ddfc7bf637110"} device-1 | {"level":"info","message":"GET /devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9? 200 14ms","method":"GET","requestID":"ac4aead48526b348b87ddfc7bf637110","responseTime":14,"status":200,"url":"/devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9?"} gateway-1 | {"time_local":"03/Sep/2024:15:38:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9? 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":"ac4aead48526b348b87ddfc7bf637110"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"a0dbeec0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/4bc53e06-c55c-4e76-9fba-f5aa822be60b","device":"0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","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":"0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 4901914572256922211 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:ewqc\r\na=ice-pwd:hUbc3nyPKcHTsjquNNC1/NJV\r\na=ice-options:trickle\r\na=fingerprint:sha-256 61:29:68:BC:0A:CB:92:3A:75:7D:C6:6C:75:85:F7:2F:44:94:0D:00:07:84:CD:74:5F:CD:40:CB:58:C4:52:81\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cbb086b-c664-4486-9dd1-45b3ba82c3f8"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"c23a0e575e0fd0fd80945575f51e3d25"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a0e823c0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":691,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:55Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff4deaf12-7af7-41c3-b2c6-2252d6f2ade8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"14a13ec2-6707-421c-a51a-26a742e31803","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377935.3601642} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":691,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.258568,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a0e823c0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a0e823c0-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a0e823c0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8/signaling 200 8ms","method":"POST","requestID":"a0e823c0-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a0e98350-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":692,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:55Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1dbe1048-b351-43b9-b8a3-8ccdc2d2bef8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377935.3691833} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":692,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.095603,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a0e98350-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a0e98350-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a0e98350-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9/signaling 200 9ms","method":"POST","requestID":"a0e98350-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9/signaling"} device-1 | {"device":"0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"f4deaf12-7af7-41c3-b2c6-2252d6f2ade8","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":"4bc53e06-c55c-4e76-9fba-f5aa822be60b","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"f4deaf12-7af7-41c3-b2c6-2252d6f2ade8","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":"f4deaf12-7af7-41c3-b2c6-2252d6f2ade8","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":"f4deaf12-7af7-41c3-b2c6-2252d6f2ade8","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":"f4deaf12-7af7-41c3-b2c6-2252d6f2ade8","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/4bc53e06-c55c-4e76-9fba-f5aa822be60b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4bc53e06-c55c-4e76-9fba-f5aa822be60b","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9feae8547dbaec6ecc1cd0265f09f040","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"9feae8547dbaec6ecc1cd0265f09f040","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/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8"},{"config":{"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/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/4bc53e06-c55c-4e76-9fba-f5aa822be60b"}}},"level":"info","message":"received a callback","requestID":"9feae8547dbaec6ecc1cd0265f09f040"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"9feae8547dbaec6ecc1cd0265f09f040","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"9feae8547dbaec6ecc1cd0265f09f040"} device-1 | {"content":{"candidate":"candidate:565360359 1 udp 2113937151 2c855811-6861-4ef7-ad9b-7df00b749ded.local 58211 typ host generation 0 ufrag ewqc network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2778717336 1 udp 1677729535 141.24.211.56 58211 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag ewqc network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:4136788755 1 udp 33562623 141.24.210.113 62154 typ relay raddr 141.24.211.56 rport 58211 generation 0 ufrag ewqc network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","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/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9'"} device-1 | {"device":"0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"data":{"peerconnection":"4bc53e06-c55c-4e76-9fba-f5aa822be60b","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"f4deaf12-7af7-41c3-b2c6-2252d6f2ade8","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":"0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"f4deaf12-7af7-41c3-b2c6-2252d6f2ade8","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":"4bc53e06-c55c-4e76-9fba-f5aa822be60b","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/4bc53e06-c55c-4e76-9fba-f5aa822be60b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4bc53e06-c55c-4e76-9fba-f5aa822be60b","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"efb6ac8215f270160d41119f8820e6dc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"efb6ac8215f270160d41119f8820e6dc","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/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8"},{"config":{"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/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/4bc53e06-c55c-4e76-9fba-f5aa822be60b"}}},"level":"info","message":"received a callback","requestID":"efb6ac8215f270160d41119f8820e6dc"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"a228ba10-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":693,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:57Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4bc53e06-c55c-4e76-9fba-f5aa822be60b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9a04f103-8714-44f4-bb08-22d9993fe668","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377937.4618847} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":693,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.339969,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/4bc53e06-c55c-4e76-9fba-f5aa822be60b","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a228ba10-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/4bc53e06-c55c-4e76-9fba-f5aa822be60b","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":"a228ba10-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"a228ba10-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /peerconnections/4bc53e06-c55c-4e76-9fba-f5aa822be60b 200 8ms","method":"GET","requestID":"a228ba10-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/peerconnections/4bc53e06-c55c-4e76-9fba-f5aa822be60b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 31ms","method":"POST","requestID":"efb6ac8215f270160d41119f8820e6dc","responseTime":31,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.035","http_referrer":"","http_user_agent":"node-fetch","requestID":"efb6ac8215f270160d41119f8820e6dc"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a22c8aa0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":694,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:57Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff4deaf12-7af7-41c3-b2c6-2252d6f2ade8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c3734e7e-d214-4a84-bd34-bc98536f06a5","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377937.4872186} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":694,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.139427,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a22c8aa0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"a22c8aa0-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a22c8aa0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8/signaling 200 10ms","method":"POST","requestID":"a22c8aa0-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a22e8670-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":695,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:57Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"468ba781-e275-4fe9-bc9f-a2d1ae7b371b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377937.5008743} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":695,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.422393,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a22e8670-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"a22e8670-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a22e8670-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9/signaling 200 12ms","method":"POST","requestID":"a22e8670-6a0a-11ef-9b41-2363e6623fc8","responseTime":12,"status":200,"url":"/devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzN30.pfhLHmROT0GSYCXXJ0CfdfPIeyq4qUy3mbtJdGrI2dQ","level":"info","message":"auth send jwt","requestID":"a8162147e8c0d3525606eccae7ee09aa"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a8162147e8c0d3525606eccae7ee09aa","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/5cbb086b-c664-4486-9dd1-45b3ba82c3f8","requestID":"a8162147e8c0d3525606eccae7ee09aa"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":696,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:57Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":696,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.262015,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5cbb086b-c664-4486-9dd1-45b3ba82c3f8","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a8162147e8c0d3525606eccae7ee09aa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/5cbb086b-c664-4486-9dd1-45b3ba82c3f8","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377937,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzN30.pfhLHmROT0GSYCXXJ0CfdfPIeyq4qUy3mbtJdGrI2dQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a8162147e8c0d3525606eccae7ee09aa","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/5cbb086b-c664-4486-9dd1-45b3ba82c3f8","requestID":"a8162147e8c0d3525606eccae7ee09aa"} gateway-1 | {"time_local":"03/Sep/2024:15:38:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/5cbb086b-c664-4486-9dd1-45b3ba82c3f8 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":"a8162147e8c0d3525606eccae7ee09aa"} experiment-1 | {"level":"info","message":"GET /experiments/5cbb086b-c664-4486-9dd1-45b3ba82c3f8 200 15ms","method":"GET","requestID":"a8162147e8c0d3525606eccae7ee09aa","responseTime":15,"status":200,"url":"/experiments/5cbb086b-c664-4486-9dd1-45b3ba82c3f8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzN30.pfhLHmROT0GSYCXXJ0CfdfPIeyq4qUy3mbtJdGrI2dQ","level":"info","message":"auth send jwt","requestID":"c274397adbf21e9c81229ed83c3e2744"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c274397adbf21e9c81229ed83c3e2744","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/5cbb086b-c664-4486-9dd1-45b3ba82c3f8","requestID":"c274397adbf21e9c81229ed83c3e2744"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":697,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:57Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":697,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.253611,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:57Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5cbb086b-c664-4486-9dd1-45b3ba82c3f8","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"c274397adbf21e9c81229ed83c3e2744","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/5cbb086b-c664-4486-9dd1-45b3ba82c3f8","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377937,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzN30.pfhLHmROT0GSYCXXJ0CfdfPIeyq4qUy3mbtJdGrI2dQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c274397adbf21e9c81229ed83c3e2744","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cbb086b-c664-4486-9dd1-45b3ba82c3f8"},"level":"info","message":"Attempting to finish experiment","requestID":"c274397adbf21e9c81229ed83c3e2744"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"a23c6920-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":698,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:57Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":698,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.531203,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:57Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/4bc53e06-c55c-4e76-9fba-f5aa822be60b","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a23c6920-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:http://localhost/peerconnections/4bc53e06-c55c-4e76-9fba-f5aa822be60b","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377937,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzN30.pfhLHmROT0GSYCXXJ0CfdfPIeyq4qUy3mbtJdGrI2dQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a23c6920-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/4bc53e06-c55c-4e76-9fba-f5aa822be60b","device":"0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"f4deaf12-7af7-41c3-b2c6-2252d6f2ade8","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":"f4deaf12-7af7-41c3-b2c6-2252d6f2ade8","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":"f4deaf12-7af7-41c3-b2c6-2252d6f2ade8","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/4bc53e06-c55c-4e76-9fba-f5aa822be60b' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/4bc53e06-c55c-4e76-9fba-f5aa822be60b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4bc53e06-c55c-4e76-9fba-f5aa822be60b","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9d3603cc1dd5c1cbe04ba668c566b065","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"9d3603cc1dd5c1cbe04ba668c566b065","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4bc53e06-c55c-4e76-9fba-f5aa822be60b': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4bc53e06-c55c-4e76-9fba-f5aa822be60b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"9db0fe2f-e193-496c-b25b-e04525a0fb7d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377937.6137178} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"972da78e-3a25-4fa0-8617-fe125c61d34f","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377937.614212} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ae30354f6d177b6989d93f7ea28ffe22","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8"},{"config":{"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/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/4bc53e06-c55c-4e76-9fba-f5aa822be60b"}}},"level":"info","message":"received a callback","requestID":"9d3603cc1dd5c1cbe04ba668c566b065"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ae30354f6d177b6989d93f7ea28ffe22","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"a23c6920-6a0a-11ef-9b41-2363e6623fc8","responseTime":15,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8"},{"config":{"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/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/4bc53e06-c55c-4e76-9fba-f5aa822be60b"}}},"level":"info","message":"received a callback","requestID":"ae30354f6d177b6989d93f7ea28ffe22"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"a23c6920-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"DELETE /peerconnections/4bc53e06-c55c-4e76-9fba-f5aa822be60b 204 44ms","method":"DELETE","requestID":"a23c6920-6a0a-11ef-9b41-2363e6623fc8","responseTime":44,"status":204,"url":"/peerconnections/4bc53e06-c55c-4e76-9fba-f5aa822be60b"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cbb086b-c664-4486-9dd1-45b3ba82c3f8"},"level":"info","message":"Successfully finished experiment","requestID":"c274397adbf21e9c81229ed83c3e2744"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a246f070-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":699,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:57Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff4deaf12-7af7-41c3-b2c6-2252d6f2ade8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cedb79a4-8f1b-44b8-b98d-5755e820da0a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377937.6625695} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":699,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.017243,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a246f070-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"a246f070-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a246f070-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8/signaling 200 15ms","method":"POST","requestID":"a246f070-6a0a-11ef-9b41-2363e6623fc8","responseTime":15,"status":200,"url":"/devices/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8/signaling"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5cbb086b-c664-4486-9dd1-45b3ba82c3f8': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5cbb086b-c664-4486-9dd1-45b3ba82c3f8","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"ce64e856-5607-4d5a-b6bd-2588a4f56297","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377937.670277} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fdc5a6d9-ca94-4f7d-8d2d-a438d54fb666","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377937.6709268} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"c274397adbf21e9c81229ed83c3e2744","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a249af90-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":700,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:57Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4cb8bbc4-97c5-4bbf-bddc-a185185eea12","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377937.6811893} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":700,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.431193,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a249af90-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9","object_type":"device","rebac_allow":false,"scope_allow":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":"a249af90-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a249af90-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9/signaling 200 14ms","method":"POST","requestID":"a249af90-6a0a-11ef-9b41-2363e6623fc8","responseTime":14,"status":200,"url":"/devices/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/5cbb086b-c664-4486-9dd1-45b3ba82c3f8","requestID":"c274397adbf21e9c81229ed83c3e2744"} gateway-1 | {"time_local":"03/Sep/2024:15:38:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/5cbb086b-c664-4486-9dd1-45b3ba82c3f8 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.168","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c274397adbf21e9c81229ed83c3e2744"} experiment-1 | {"level":"info","message":"DELETE /experiments/5cbb086b-c664-4486-9dd1-45b3ba82c3f8 204 164ms","method":"DELETE","requestID":"c274397adbf21e9c81229ed83c3e2744","responseTime":164,"status":204,"url":"/experiments/5cbb086b-c664-4486-9dd1-45b3ba82c3f8"} gateway-1 | {"time_local":"03/Sep/2024:15:38:57 +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.258","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"94b8819a89f28949f638fe61c261448b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 121ms","method":"POST","requestID":"9d3603cc1dd5c1cbe04ba668c566b065","responseTime":121,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:38:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.126","http_referrer":"","http_user_agent":"node-fetch","requestID":"9d3603cc1dd5c1cbe04ba668c566b065"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 122ms","method":"POST","requestID":"ae30354f6d177b6989d93f7ea28ffe22","responseTime":122,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzN30.pfhLHmROT0GSYCXXJ0CfdfPIeyq4qUy3mbtJdGrI2dQ","level":"info","message":"auth send jwt","requestID":"1c09406a801040fb97e063bbd8bf0b7d"} gateway-1 | {"time_local":"03/Sep/2024:15:38:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.129","http_referrer":"","http_user_agent":"node-fetch","requestID":"ae30354f6d177b6989d93f7ea28ffe22"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1c09406a801040fb97e063bbd8bf0b7d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1c09406a801040fb97e063bbd8bf0b7d"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":701,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:57Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":701,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.789521,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:57Z"} gateway-1 | {"time_local":"03/Sep/2024:15:38:57 +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.729","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"3f4695bb9b0114650f5c4d0b46087e6e"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"1c09406a801040fb97e063bbd8bf0b7d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377937,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzN30.pfhLHmROT0GSYCXXJ0CfdfPIeyq4qUy3mbtJdGrI2dQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1c09406a801040fb97e063bbd8bf0b7d","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/f4deaf12-7af7-41c3-b2c6-2252d6f2ade8' 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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd38b66-479d-46bb-875b-d29b659c07cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"f26da3c6-50ed-4b0f-9c8a-c75d9d328fa3","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377937.7679985} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1c09406a801040fb97e063bbd8bf0b7d","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/0cdb1ffa-2be5-42d3-b201-974f99d9c5b9' 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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"12f96a8c-e2e9-4ba6-a207-3ca22ff4b795","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377937.7735393} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"1c09406a801040fb97e063bbd8bf0b7d","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd38b66-479d-46bb-875b-d29b659c07cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"6f349e5d-37f6-4ceb-9f85-fd1d1b65c5c6","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377937.783283} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a303550b-d898-41dc-acdc-002c72ad61cb","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377937.783522} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"1c09406a801040fb97e063bbd8bf0b7d","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd38b66-479d-46bb-875b-d29b659c07cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd38b66-479d-46bb-875b-d29b659c07cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:57.783252300Z"}]},"request_id":"04dca88d-c3f2-41ed-84c3-a7578e402597","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377937.787928} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"1c09406a801040fb97e063bbd8bf0b7d","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1c09406a801040fb97e063bbd8bf0b7d"} gateway-1 | {"time_local":"03/Sep/2024:15:38:57 +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":"1c09406a801040fb97e063bbd8bf0b7d"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"1c09406a801040fb97e063bbd8bf0b7d","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzN30.pfhLHmROT0GSYCXXJ0CfdfPIeyq4qUy3mbtJdGrI2dQ","level":"info","message":"auth send jwt","requestID":"5206185d5c0543a1f2a9a1ad487da4b0"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"5206185d5c0543a1f2a9a1ad487da4b0","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"5206185d5c0543a1f2a9a1ad487da4b0"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":702,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:57Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":702,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.751517,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"5206185d5c0543a1f2a9a1ad487da4b0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377937,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzN30.pfhLHmROT0GSYCXXJ0CfdfPIeyq4qUy3mbtJdGrI2dQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5206185d5c0543a1f2a9a1ad487da4b0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0e473b1-9cd3-49a7-a529-0f9db0251be6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"aa418a26-81d9-49e7-a96a-baf7f5e15622","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377937.8165658} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5206185d5c0543a1f2a9a1ad487da4b0","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"98307954-ad97-4f2d-a125-41b33af5423d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377937.821217} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"5206185d5c0543a1f2a9a1ad487da4b0","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0e473b1-9cd3-49a7-a529-0f9db0251be6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"04c8649e-7023-4ce9-836f-d3247751704f","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377937.8321226} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ae7548a6-70cd-44f4-9889-542dbe6b8b52","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377937.8323982} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"5206185d5c0543a1f2a9a1ad487da4b0","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0e473b1-9cd3-49a7-a529-0f9db0251be6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0e473b1-9cd3-49a7-a529-0f9db0251be6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:57.832094472Z"}]},"request_id":"6162b443-6709-4eae-ab4f-51459ff38802","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377937.8358674} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"5206185d5c0543a1f2a9a1ad487da4b0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"5206185d5c0543a1f2a9a1ad487da4b0"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"5206185d5c0543a1f2a9a1ad487da4b0","responseTime":42,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"03/Sep/2024:15:38:57 +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":"5206185d5c0543a1f2a9a1ad487da4b0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzOH0.s51N9l-bQgXN5aKCRLqk8HBfrgIUlfjOligIzNILBFk","level":"info","message":"auth send jwt","requestID":"80961626ed1fb839b85a5da33c1cbbdf"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"80961626ed1fb839b85a5da33c1cbbdf","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"80961626ed1fb839b85a5da33c1cbbdf"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":703,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:58Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":703,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.280338,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:58Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/edd38b66-479d-46bb-875b-d29b659c07cf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"80961626ed1fb839b85a5da33c1cbbdf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/edd38b66-479d-46bb-875b-d29b659c07cf","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377938,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzOH0.s51N9l-bQgXN5aKCRLqk8HBfrgIUlfjOligIzNILBFk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"80961626ed1fb839b85a5da33c1cbbdf","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd38b66-479d-46bb-875b-d29b659c07cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd38b66-479d-46bb-875b-d29b659c07cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:57.783252300Z"}]},"request_id":"9f5e8516-74f9-463e-b95f-56b37f22f264","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377938.2961433} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"80961626ed1fb839b85a5da33c1cbbdf","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7a375d26-937c-45c6-b311-ae1cd1996fc3","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377938.3043067} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"80961626ed1fb839b85a5da33c1cbbdf","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd38b66-479d-46bb-875b-d29b659c07cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd38b66-479d-46bb-875b-d29b659c07cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:57.783252300Z"}]},"request_id":"2e74a4c3-688a-4207-a549-7f997f7a2ff8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377938.3160968} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"80961626ed1fb839b85a5da33c1cbbdf","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"80961626ed1fb839b85a5da33c1cbbdf"} device-1 | {"level":"info","message":"PATCH /devices/edd38b66-479d-46bb-875b-d29b659c07cf 200 37ms","method":"PATCH","requestID":"80961626ed1fb839b85a5da33c1cbbdf","responseTime":37,"status":200,"url":"/devices/edd38b66-479d-46bb-875b-d29b659c07cf"} gateway-1 | {"time_local":"03/Sep/2024:15:38:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/edd38b66-479d-46bb-875b-d29b659c07cf HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.043","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"80961626ed1fb839b85a5da33c1cbbdf"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzOH0.s51N9l-bQgXN5aKCRLqk8HBfrgIUlfjOligIzNILBFk","level":"info","message":"auth send jwt","requestID":"10ea344fbad0de61252bb3a5ba704310"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"10ea344fbad0de61252bb3a5ba704310","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"10ea344fbad0de61252bb3a5ba704310"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":704,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:58Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":704,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.876111,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:58Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/edd38b66-479d-46bb-875b-d29b659c07cf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"10ea344fbad0de61252bb3a5ba704310","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/edd38b66-479d-46bb-875b-d29b659c07cf","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377938,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzOH0.s51N9l-bQgXN5aKCRLqk8HBfrgIUlfjOligIzNILBFk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"10ea344fbad0de61252bb3a5ba704310","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"10ea344fbad0de61252bb3a5ba704310"} device-1 | {"level":"info","message":"POST /devices/edd38b66-479d-46bb-875b-d29b659c07cf/websocket 200 20ms","method":"POST","requestID":"10ea344fbad0de61252bb3a5ba704310","responseTime":20,"status":200,"url":"/devices/edd38b66-479d-46bb-875b-d29b659c07cf/websocket"} gateway-1 | {"time_local":"03/Sep/2024:15:38:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/edd38b66-479d-46bb-875b-d29b659c07cf/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"10ea344fbad0de61252bb3a5ba704310"} device-1 | {"level":"info","message":"device 'http://localhost/devices/edd38b66-479d-46bb-875b-d29b659c07cf' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"285da683fcfaf54062f9dfadfb169a94","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"285da683fcfaf54062f9dfadfb169a94","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"03/Sep/2024:15:38:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6/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":"285da683fcfaf54062f9dfadfb169a94"} device-1 | {"level":"info","message":"OPTIONS /devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6/websocket 200 2ms","method":"OPTIONS","requestID":"285da683fcfaf54062f9dfadfb169a94","responseTime":2,"status":200,"url":"/devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzOX0.08SuOPm_RxmP2HCQDHAO-sP3qhgtxBDbJANT2_Pz_vs","level":"info","message":"auth send jwt","requestID":"32afcb48af79e350e4b8c88e8e94547c"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"32afcb48af79e350e4b8c88e8e94547c","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"32afcb48af79e350e4b8c88e8e94547c"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":705,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:59Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":705,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.323188,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:59Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"32afcb48af79e350e4b8c88e8e94547c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377939,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzOX0.08SuOPm_RxmP2HCQDHAO-sP3qhgtxBDbJANT2_Pz_vs"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"32afcb48af79e350e4b8c88e8e94547c","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"32afcb48af79e350e4b8c88e8e94547c"} gateway-1 | {"time_local":"03/Sep/2024:15:38:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6/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":"32afcb48af79e350e4b8c88e8e94547c"} device-1 | {"level":"info","message":"POST /devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6/websocket 200 24ms","method":"POST","requestID":"32afcb48af79e350e4b8c88e8e94547c","responseTime":24,"status":200,"url":"/devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzOX0.08SuOPm_RxmP2HCQDHAO-sP3qhgtxBDbJANT2_Pz_vs","level":"info","message":"auth send jwt","requestID":"005e5dfe4e9407f334c6ea9e6656db4c"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"005e5dfe4e9407f334c6ea9e6656db4c","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"005e5dfe4e9407f334c6ea9e6656db4c"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":706,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:59Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":706,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.369414,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/edd38b66-479d-46bb-875b-d29b659c07cf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"005e5dfe4e9407f334c6ea9e6656db4c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/edd38b66-479d-46bb-875b-d29b659c07cf","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377939,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzOX0.08SuOPm_RxmP2HCQDHAO-sP3qhgtxBDbJANT2_Pz_vs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"005e5dfe4e9407f334c6ea9e6656db4c","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd38b66-479d-46bb-875b-d29b659c07cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd38b66-479d-46bb-875b-d29b659c07cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:57.783252300Z"}]},"request_id":"9a6210f8-6dae-416a-ab6d-a8d88a12107c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377939.9292307} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"005e5dfe4e9407f334c6ea9e6656db4c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"005e5dfe4e9407f334c6ea9e6656db4c"} device-1 | {"level":"info","message":"GET /devices/edd38b66-479d-46bb-875b-d29b659c07cf? 200 17ms","method":"GET","requestID":"005e5dfe4e9407f334c6ea9e6656db4c","responseTime":17,"status":200,"url":"/devices/edd38b66-479d-46bb-875b-d29b659c07cf?"} gateway-1 | {"time_local":"03/Sep/2024:15:38:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/edd38b66-479d-46bb-875b-d29b659c07cf? 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":"005e5dfe4e9407f334c6ea9e6656db4c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzOX0.08SuOPm_RxmP2HCQDHAO-sP3qhgtxBDbJANT2_Pz_vs","level":"info","message":"auth send jwt","requestID":"557cee630e5de05381aa3e77231ccba3"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"557cee630e5de05381aa3e77231ccba3","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"557cee630e5de05381aa3e77231ccba3"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":707,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:59Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":707,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.231281,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"557cee630e5de05381aa3e77231ccba3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377939,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzOX0.08SuOPm_RxmP2HCQDHAO-sP3qhgtxBDbJANT2_Pz_vs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"557cee630e5de05381aa3e77231ccba3","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0e473b1-9cd3-49a7-a529-0f9db0251be6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0e473b1-9cd3-49a7-a529-0f9db0251be6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:57.832094472Z"}]},"request_id":"a5acfd93-9171-49b2-9eae-7a81a67e0f85","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377939.9556043} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"557cee630e5de05381aa3e77231ccba3","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"557cee630e5de05381aa3e77231ccba3"} gateway-1 | {"time_local":"03/Sep/2024:15:38:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6? 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":"557cee630e5de05381aa3e77231ccba3"} device-1 | {"level":"info","message":"GET /devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6? 200 17ms","method":"GET","requestID":"557cee630e5de05381aa3e77231ccba3","responseTime":17,"status":200,"url":"/devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzOX0.08SuOPm_RxmP2HCQDHAO-sP3qhgtxBDbJANT2_Pz_vs","level":"info","message":"auth send jwt","requestID":"89a0fb9cfc14d241649e1ba91368ec58"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"89a0fb9cfc14d241649e1ba91368ec58","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"89a0fb9cfc14d241649e1ba91368ec58"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":708,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:38:59Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":708,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.236415,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:38:59Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"89a0fb9cfc14d241649e1ba91368ec58","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377939,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzOX0.08SuOPm_RxmP2HCQDHAO-sP3qhgtxBDbJANT2_Pz_vs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"89a0fb9cfc14d241649e1ba91368ec58","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9916a69e-f421-497b-92e9-f871175cca8d"},"level":"info","message":"Attempting to run experiment","requestID":"89a0fb9cfc14d241649e1ba91368ec58"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9916a69e-f421-497b-92e9-f871175cca8d"},"level":"info","message":"Attempting to book experiment","requestID":"89a0fb9cfc14d241649e1ba91368ec58"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9916a69e-f421-497b-92e9-f871175cca8d"},"level":"info","message":"Successfully booked experiment","requestID":"89a0fb9cfc14d241649e1ba91368ec58"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a3ae6fb0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a3aebdd0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":709,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:00Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":709,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.906158,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:00Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":710,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/edd38b66-479d-46bb-875b-d29b659c07cf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a3ae6fb0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/edd38b66-479d-46bb-875b-d29b659c07cf","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377939,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzOX0.08SuOPm_RxmP2HCQDHAO-sP3qhgtxBDbJANT2_Pz_vs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a3ae6fb0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":710,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.854185,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a3aebdd0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377939,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzOX0.08SuOPm_RxmP2HCQDHAO-sP3qhgtxBDbJANT2_Pz_vs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a3aebdd0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd38b66-479d-46bb-875b-d29b659c07cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd38b66-479d-46bb-875b-d29b659c07cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:57.783252300Z"}]},"request_id":"dcd6ec6d-a899-4677-9321-dd9328f38fc7","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377940.023714} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"a3ae6fb0-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0e473b1-9cd3-49a7-a529-0f9db0251be6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0e473b1-9cd3-49a7-a529-0f9db0251be6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:57.832094472Z"}]},"request_id":"e01ff7ac-9b47-4ee9-9939-962d27438fb1","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377940.0250762} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a3aebdd0-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a3ae6fb0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/edd38b66-479d-46bb-875b-d29b659c07cf? 200 19ms","method":"GET","requestID":"a3ae6fb0-6a0a-11ef-9b41-2363e6623fc8","responseTime":19,"status":200,"url":"/devices/edd38b66-479d-46bb-875b-d29b659c07cf?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a3aebdd0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6? 200 18ms","method":"GET","requestID":"a3aebdd0-6a0a-11ef-9b41-2363e6623fc8","responseTime":18,"status":200,"url":"/devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9916a69e-f421-497b-92e9-f871175cca8d"},"level":"info","message":"Setting up experiment","requestID":"89a0fb9cfc14d241649e1ba91368ec58"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9916a69e-f421-497b-92e9-f871175cca8d"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"89a0fb9cfc14d241649e1ba91368ec58"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9916a69e-f421-497b-92e9-f871175cca8d"},"level":"info","message":"Successfully locked booking for experiment","requestID":"89a0fb9cfc14d241649e1ba91368ec58"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9916a69e-f421-497b-92e9-f871175cca8d"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"89a0fb9cfc14d241649e1ba91368ec58"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9916a69e-f421-497b-92e9-f871175cca8d"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"89a0fb9cfc14d241649e1ba91368ec58"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9916a69e-f421-497b-92e9-f871175cca8d"},"level":"info","message":"Attempting to update booking for experiment","requestID":"89a0fb9cfc14d241649e1ba91368ec58"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9916a69e-f421-497b-92e9-f871175cca8d"},"level":"info","message":"Successfully updated booking for experiment","requestID":"89a0fb9cfc14d241649e1ba91368ec58"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9916a69e-f421-497b-92e9-f871175cca8d"},"level":"info","message":"Successfully set up experiment","requestID":"89a0fb9cfc14d241649e1ba91368ec58"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a3b8cff0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a3b91e10-6a0a-11ef-9b41-2363e6623fc8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9916a69e-f421-497b-92e9-f871175cca8d"},"level":"info","message":"Successfully running experiment","requestID":"89a0fb9cfc14d241649e1ba91368ec58"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a3b99340-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":711,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:00Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":711,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.379264,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:00Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":712,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/edd38b66-479d-46bb-875b-d29b659c07cf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a3b8cff0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/edd38b66-479d-46bb-875b-d29b659c07cf","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377939,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzOX0.08SuOPm_RxmP2HCQDHAO-sP3qhgtxBDbJANT2_Pz_vs"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"a3b8cff0-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":712,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.536623,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:00Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":713,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a3b91e10-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377939,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzOX0.08SuOPm_RxmP2HCQDHAO-sP3qhgtxBDbJANT2_Pz_vs"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"a3b91e10-6a0a-11ef-9b41-2363e6623fc8","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd38b66-479d-46bb-875b-d29b659c07cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1e5195b0-a752-4e1a-bd1c-00a99891b05b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377940.0967536} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":713,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.664252,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/edd38b66-479d-46bb-875b-d29b659c07cf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a3b99340-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/edd38b66-479d-46bb-875b-d29b659c07cf","object_type":"device","rebac_allow":false,"scope_allow":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":"a3b99340-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd38b66-479d-46bb-875b-d29b659c07cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd38b66-479d-46bb-875b-d29b659c07cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:57.783252300Z"}]},"request_id":"9b444e39-020c-4391-ad7e-2ce3dbcb42b1","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377940.099264} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0e473b1-9cd3-49a7-a529-0f9db0251be6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0e473b1-9cd3-49a7-a529-0f9db0251be6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:57.832094472Z"}]},"request_id":"db06690e-761f-4acc-9af7-c6c0cdb5237f","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377940.101001} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"a3b8cff0-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"a3b91e10-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9916a69e-f421-497b-92e9-f871175cca8d#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9916a69e-f421-497b-92e9-f871175cca8d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"4f4c57c7-7c15-42cc-982f-64cfdd89d5df","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377940.1103268} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8824532e-49e2-4c00-b772-0572c8eef702","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377940.1106467} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a3b99340-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/edd38b66-479d-46bb-875b-d29b659c07cf/signaling 200 29ms","method":"POST","requestID":"a3b99340-6a0a-11ef-9b41-2363e6623fc8","responseTime":29,"status":200,"url":"/devices/edd38b66-479d-46bb-875b-d29b659c07cf/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"89a0fb9cfc14d241649e1ba91368ec58","responseTime":24,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a3b8cff0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/edd38b66-479d-46bb-875b-d29b659c07cf? 200 35ms","method":"GET","requestID":"a3b8cff0-6a0a-11ef-9b41-2363e6623fc8","responseTime":35,"status":200,"url":"/devices/edd38b66-479d-46bb-875b-d29b659c07cf?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a3b91e10-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6? 200 34ms","method":"GET","requestID":"a3b91e10-6a0a-11ef-9b41-2363e6623fc8","responseTime":34,"status":200,"url":"/devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a3be7540-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":714,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:00Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0e473b1-9cd3-49a7-a529-0f9db0251be6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"64b93dd1-1338-4d8e-9219-40a9b953544d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377940.1224496} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":714,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.582581,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a3be7540-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"a3be7540-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a3bfd4d0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":715,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:00Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a3be7540-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6/signaling 200 15ms","method":"POST","requestID":"a3be7540-6a0a-11ef-9b41-2363e6623fc8","responseTime":15,"status":200,"url":"/devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/9916a69e-f421-497b-92e9-f871175cca8d","user":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"89a0fb9cfc14d241649e1ba91368ec58"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd38b66-479d-46bb-875b-d29b659c07cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"609c3238-caeb-40bc-8391-4d9215aeb4b7","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377940.1316204} gateway-1 | {"time_local":"03/Sep/2024:15:39:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1215","request_time":"0.169","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"89a0fb9cfc14d241649e1ba91368ec58"} experiment-1 | {"level":"info","message":"POST /experiments? 201 162ms","method":"POST","requestID":"89a0fb9cfc14d241649e1ba91368ec58","responseTime":162,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":715,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.850925,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/edd38b66-479d-46bb-875b-d29b659c07cf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a3bfd4d0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/edd38b66-479d-46bb-875b-d29b659c07cf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"a3bfd4d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a3bfd4d0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/edd38b66-479d-46bb-875b-d29b659c07cf/signaling 200 12ms","method":"POST","requestID":"a3bfd4d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":12,"status":200,"url":"/devices/edd38b66-479d-46bb-875b-d29b659c07cf/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0MH0.pUcsEshFPKMM8SDTDwZMU06jDjo2oygkuc34i1ssNQc","level":"info","message":"auth send jwt","requestID":"aed1316546026c0348eefe32b09c66aa"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"aed1316546026c0348eefe32b09c66aa","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"aed1316546026c0348eefe32b09c66aa"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a3c21ec0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":716,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:00Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":716,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.101828,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:00Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":717,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/edd38b66-479d-46bb-875b-d29b659c07cf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"aed1316546026c0348eefe32b09c66aa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/edd38b66-479d-46bb-875b-d29b659c07cf","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377940,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0MH0.pUcsEshFPKMM8SDTDwZMU06jDjo2oygkuc34i1ssNQc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"aed1316546026c0348eefe32b09c66aa","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0e473b1-9cd3-49a7-a529-0f9db0251be6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"31cc866a-e2da-462e-a236-a595d4c4acb2","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377940.1452308} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":717,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.606216,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a3c21ec0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a3c21ec0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd38b66-479d-46bb-875b-d29b659c07cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd38b66-479d-46bb-875b-d29b659c07cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:57.783252300Z"}]},"request_id":"34e2b770-fa4f-4eff-811c-0f4cc75923fb","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377940.1487188} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a3c21ec0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"aed1316546026c0348eefe32b09c66aa","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6/signaling 200 9ms","method":"POST","requestID":"a3c21ec0-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9916a69e-f421-497b-92e9-f871175cca8d"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"89a0fb9cfc14d241649e1ba91368ec58"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9916a69e-f421-497b-92e9-f871175cca8d"},"level":"info","message":"Building connection plan","requestID":"89a0fb9cfc14d241649e1ba91368ec58"} 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":"c55a4c4a-5649-421e-9677-db4a06737760"},{"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":"22d99b51-70c3-4061-9a9f-ff7d5a3cc064"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"f1e9933e-7d51-4ba9-91d3-820c65ad54b6"}]},"level":"info","message":"Built pairwise service configurations","requestID":"89a0fb9cfc14d241649e1ba91368ec58"} 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/edd38b66-479d-46bb-875b-d29b659c07cf"},{"config":{"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/e0e473b1-9cd3-49a7-a529-0f9db0251be6"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"89a0fb9cfc14d241649e1ba91368ec58"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"a3c3f380-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"aed1316546026c0348eefe32b09c66aa"} gateway-1 | {"time_local":"03/Sep/2024:15:39:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/edd38b66-479d-46bb-875b-d29b659c07cf? 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":"aed1316546026c0348eefe32b09c66aa"} device-1 | {"level":"info","message":"GET /devices/edd38b66-479d-46bb-875b-d29b659c07cf? 200 15ms","method":"GET","requestID":"aed1316546026c0348eefe32b09c66aa","responseTime":15,"status":200,"url":"/devices/edd38b66-479d-46bb-875b-d29b659c07cf?"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":718,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:00Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":718,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.929183,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:00Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a3c3f380-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377939,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3NzkzOX0.08SuOPm_RxmP2HCQDHAO-sP3qhgtxBDbJANT2_Pz_vs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a3c3f380-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0MH0.pUcsEshFPKMM8SDTDwZMU06jDjo2oygkuc34i1ssNQc","level":"info","message":"auth send jwt","requestID":"1b7781adeb5eed4f07a188dac7e2eace"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1b7781adeb5eed4f07a188dac7e2eace","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1b7781adeb5eed4f07a188dac7e2eace"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":719,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:00Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":719,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.712484,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"1b7781adeb5eed4f07a188dac7e2eace","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377940,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0MH0.pUcsEshFPKMM8SDTDwZMU06jDjo2oygkuc34i1ssNQc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1b7781adeb5eed4f07a188dac7e2eace","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0e473b1-9cd3-49a7-a529-0f9db0251be6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0e473b1-9cd3-49a7-a529-0f9db0251be6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:38:57.832094472Z"}]},"request_id":"ef1278c6-9db7-4f27-93ee-b5cc49d1da1e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377940.1673045} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1b7781adeb5eed4f07a188dac7e2eace","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","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%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"ba86f474-1b33-4601-8fbc-5576f9fa35d0","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377940.1691968} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"76366cd2-ae42-4f24-87c2-a3bbc3e367ae","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377940.1694643} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"a3c3f380-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1b7781adeb5eed4f07a188dac7e2eace"} gateway-1 | {"time_local":"03/Sep/2024:15:39:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6? 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":"1b7781adeb5eed4f07a188dac7e2eace"} device-1 | {"level":"info","message":"GET /devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6? 200 15ms","method":"GET","requestID":"1b7781adeb5eed4f07a188dac7e2eace","responseTime":15,"status":200,"url":"/devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"a3c3f380-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"a3c3f380-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/32ecf8b8-f6f9-4d65-9a65-2bf428059f4d'","requestID":"a3c3f380-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/32ecf8b8-f6f9-4d65-9a65-2bf428059f4d'","requestID":"a3c3f380-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"a3c3f380-6a0a-11ef-9b41-2363e6623fc8"} 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":"a3c3f380-6a0a-11ef-9b41-2363e6623fc8","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":"a3c3f380-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/32ecf8b8-f6f9-4d65-9a65-2bf428059f4d","device":"e0e473b1-9cd3-49a7-a529-0f9db0251be6","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/9916a69e-f421-497b-92e9-f871175cca8d"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"89a0fb9cfc14d241649e1ba91368ec58"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a3cca610-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":720,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:00Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd38b66-479d-46bb-875b-d29b659c07cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c8b57ca5-3091-4a6e-864e-03bff375c010","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377940.2138703} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":720,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.888885,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/edd38b66-479d-46bb-875b-d29b659c07cf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a3cca610-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/edd38b66-479d-46bb-875b-d29b659c07cf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a3cca610-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a3cca610-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/edd38b66-479d-46bb-875b-d29b659c07cf/signaling 200 8ms","method":"POST","requestID":"a3cca610-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/devices/edd38b66-479d-46bb-875b-d29b659c07cf/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a3ce2cb0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":721,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:00Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0e473b1-9cd3-49a7-a529-0f9db0251be6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d3f9e912-6ed0-489e-aa17-a04d9c4fc7db","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377940.223296} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":721,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.331792,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a3ce2cb0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a3ce2cb0-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a3ce2cb0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6/signaling 200 8ms","method":"POST","requestID":"a3ce2cb0-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6/signaling"} device-1 | {"device":"e0e473b1-9cd3-49a7-a529-0f9db0251be6","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"e0e473b1-9cd3-49a7-a529-0f9db0251be6","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 6076961239828147631 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:hXXm\r\na=ice-pwd:tGUeoABrLXkkpjLH7BJQw/i3\r\na=ice-options:trickle\r\na=fingerprint:sha-256 92:E2:05:30:6D:9E:E0:4C:6B:28:A1:48:15:25:DD:04:D4:E9:5C:CB:30:99:DE:BE:50:0D:5C:3C:41:C6:B1:E8\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"e0e473b1-9cd3-49a7-a529-0f9db0251be6","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"device":"e0e473b1-9cd3-49a7-a529-0f9db0251be6","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"edd38b66-479d-46bb-875b-d29b659c07cf","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":"32ecf8b8-f6f9-4d65-9a65-2bf428059f4d","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"edd38b66-479d-46bb-875b-d29b659c07cf","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":"edd38b66-479d-46bb-875b-d29b659c07cf","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":"edd38b66-479d-46bb-875b-d29b659c07cf","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":"edd38b66-479d-46bb-875b-d29b659c07cf","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/32ecf8b8-f6f9-4d65-9a65-2bf428059f4d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"32ecf8b8-f6f9-4d65-9a65-2bf428059f4d","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2803ce9c4bd796052430503319f91972","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"2803ce9c4bd796052430503319f91972","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/edd38b66-479d-46bb-875b-d29b659c07cf"},{"config":{"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/e0e473b1-9cd3-49a7-a529-0f9db0251be6"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/32ecf8b8-f6f9-4d65-9a65-2bf428059f4d"}}},"level":"info","message":"received a callback","requestID":"2803ce9c4bd796052430503319f91972"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"2803ce9c4bd796052430503319f91972","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:39:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"2803ce9c4bd796052430503319f91972"} device-1 | {"content":{"candidate":"candidate:3891424921 1 udp 2113937151 932822ec-b841-4010-8bfd-115b885ed166.local 38745 typ host generation 0 ufrag hXXm network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"e0e473b1-9cd3-49a7-a529-0f9db0251be6","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1960431498 1 udp 1677729535 141.24.211.56 38745 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag hXXm network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"e0e473b1-9cd3-49a7-a529-0f9db0251be6","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3405083768 1 udp 33562623 141.24.210.113 63285 typ relay raddr 141.24.211.56 rport 38745 generation 0 ufrag hXXm network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"e0e473b1-9cd3-49a7-a529-0f9db0251be6","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"e0e473b1-9cd3-49a7-a529-0f9db0251be6","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/e0e473b1-9cd3-49a7-a529-0f9db0251be6'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6'"} device-1 | {"data":{"peerconnection":"32ecf8b8-f6f9-4d65-9a65-2bf428059f4d","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"edd38b66-479d-46bb-875b-d29b659c07cf","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":"e0e473b1-9cd3-49a7-a529-0f9db0251be6","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"edd38b66-479d-46bb-875b-d29b659c07cf","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":"32ecf8b8-f6f9-4d65-9a65-2bf428059f4d","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/32ecf8b8-f6f9-4d65-9a65-2bf428059f4d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"32ecf8b8-f6f9-4d65-9a65-2bf428059f4d","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fcbfda0e4e4d7511d1be0bb1ad50195f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"fcbfda0e4e4d7511d1be0bb1ad50195f","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/edd38b66-479d-46bb-875b-d29b659c07cf"},{"config":{"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/e0e473b1-9cd3-49a7-a529-0f9db0251be6"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/32ecf8b8-f6f9-4d65-9a65-2bf428059f4d"}}},"level":"info","message":"received a callback","requestID":"fcbfda0e4e4d7511d1be0bb1ad50195f"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"a50a0810-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":722,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:02Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F32ecf8b8-f6f9-4d65-9a65-2bf428059f4d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f829d642-f48b-4b00-bf2a-ee8be7cfc05e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377942.294066} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":722,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.843506,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/32ecf8b8-f6f9-4d65-9a65-2bf428059f4d","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a50a0810-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/32ecf8b8-f6f9-4d65-9a65-2bf428059f4d","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":"a50a0810-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"a50a0810-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /peerconnections/32ecf8b8-f6f9-4d65-9a65-2bf428059f4d 200 9ms","method":"GET","requestID":"a50a0810-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/peerconnections/32ecf8b8-f6f9-4d65-9a65-2bf428059f4d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 28ms","method":"POST","requestID":"fcbfda0e4e4d7511d1be0bb1ad50195f","responseTime":28,"status":200,"url":"/callbacks/experiment"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a50dd8a0-6a0a-11ef-9b41-2363e6623fc8"} gateway-1 | {"time_local":"03/Sep/2024:15:39:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.032","http_referrer":"","http_user_agent":"node-fetch","requestID":"fcbfda0e4e4d7511d1be0bb1ad50195f"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":723,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:02Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd38b66-479d-46bb-875b-d29b659c07cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"618d9d4b-c0c8-472e-879d-d6d05b76ae0d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377942.3197846} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":723,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.680091,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/edd38b66-479d-46bb-875b-d29b659c07cf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a50dd8a0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/edd38b66-479d-46bb-875b-d29b659c07cf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a50dd8a0-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a50dd8a0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/edd38b66-479d-46bb-875b-d29b659c07cf/signaling 200 10ms","method":"POST","requestID":"a50dd8a0-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/devices/edd38b66-479d-46bb-875b-d29b659c07cf/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a50fad60-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":724,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:02Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0e473b1-9cd3-49a7-a529-0f9db0251be6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f1c807a3-bffa-47f6-80a7-5b413450be78","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377942.3320837} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":724,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.977427,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a50fad60-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a50fad60-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a50fad60-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6/signaling 200 11ms","method":"POST","requestID":"a50fad60-6a0a-11ef-9b41-2363e6623fc8","responseTime":11,"status":200,"url":"/devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0Mn0.Z8xTqOu1cuv9oooMtWjZtMj_mOBOsfqk_7KT64BofOA","level":"info","message":"auth send jwt","requestID":"14b7df11479a12328a0d836c7a1bebac"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"14b7df11479a12328a0d836c7a1bebac","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/9916a69e-f421-497b-92e9-f871175cca8d","requestID":"14b7df11479a12328a0d836c7a1bebac"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":725,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:02Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":725,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.258269,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/9916a69e-f421-497b-92e9-f871175cca8d","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"14b7df11479a12328a0d836c7a1bebac","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/9916a69e-f421-497b-92e9-f871175cca8d","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377942,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0Mn0.Z8xTqOu1cuv9oooMtWjZtMj_mOBOsfqk_7KT64BofOA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"14b7df11479a12328a0d836c7a1bebac","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/9916a69e-f421-497b-92e9-f871175cca8d","requestID":"14b7df11479a12328a0d836c7a1bebac"} gateway-1 | {"time_local":"03/Sep/2024:15:39:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/9916a69e-f421-497b-92e9-f871175cca8d 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":"14b7df11479a12328a0d836c7a1bebac"} experiment-1 | {"level":"info","message":"GET /experiments/9916a69e-f421-497b-92e9-f871175cca8d 200 13ms","method":"GET","requestID":"14b7df11479a12328a0d836c7a1bebac","responseTime":13,"status":200,"url":"/experiments/9916a69e-f421-497b-92e9-f871175cca8d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0Mn0.Z8xTqOu1cuv9oooMtWjZtMj_mOBOsfqk_7KT64BofOA","level":"info","message":"auth send jwt","requestID":"86fdf5c396ef54f0da1a9b806777ba48"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"86fdf5c396ef54f0da1a9b806777ba48","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/9916a69e-f421-497b-92e9-f871175cca8d","requestID":"86fdf5c396ef54f0da1a9b806777ba48"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":726,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:02Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":726,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.341817,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:02Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/9916a69e-f421-497b-92e9-f871175cca8d","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"86fdf5c396ef54f0da1a9b806777ba48","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/9916a69e-f421-497b-92e9-f871175cca8d","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377942,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0Mn0.Z8xTqOu1cuv9oooMtWjZtMj_mOBOsfqk_7KT64BofOA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"86fdf5c396ef54f0da1a9b806777ba48","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9916a69e-f421-497b-92e9-f871175cca8d"},"level":"info","message":"Attempting to finish experiment","requestID":"86fdf5c396ef54f0da1a9b806777ba48"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"a51d9010-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":727,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:02Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":727,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.174907,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:02Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/32ecf8b8-f6f9-4d65-9a65-2bf428059f4d","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a51d9010-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:http://localhost/peerconnections/32ecf8b8-f6f9-4d65-9a65-2bf428059f4d","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377942,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0Mn0.Z8xTqOu1cuv9oooMtWjZtMj_mOBOsfqk_7KT64BofOA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a51d9010-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/32ecf8b8-f6f9-4d65-9a65-2bf428059f4d","device":"e0e473b1-9cd3-49a7-a529-0f9db0251be6","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"edd38b66-479d-46bb-875b-d29b659c07cf","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":"edd38b66-479d-46bb-875b-d29b659c07cf","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":"edd38b66-479d-46bb-875b-d29b659c07cf","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/32ecf8b8-f6f9-4d65-9a65-2bf428059f4d' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/32ecf8b8-f6f9-4d65-9a65-2bf428059f4d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"32ecf8b8-f6f9-4d65-9a65-2bf428059f4d","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F32ecf8b8-f6f9-4d65-9a65-2bf428059f4d': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F32ecf8b8-f6f9-4d65-9a65-2bf428059f4d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"13fe5f11-d7ab-4a94-bf08-970233586619","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377942.4391038} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4b24d685-1734-4b5e-b5da-b054c1b64f4a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377942.4393995} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2818ca467d3f78075706e0f7fbe98202","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2818ca467d3f78075706e0f7fbe98202","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"a51d9010-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"164992591a4adb48d0635ad5581a29b2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"164992591a4adb48d0635ad5581a29b2","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/edd38b66-479d-46bb-875b-d29b659c07cf"},{"config":{"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/e0e473b1-9cd3-49a7-a529-0f9db0251be6"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/32ecf8b8-f6f9-4d65-9a65-2bf428059f4d"}}},"level":"info","message":"received a callback","requestID":"2818ca467d3f78075706e0f7fbe98202"} 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/edd38b66-479d-46bb-875b-d29b659c07cf"},{"config":{"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/e0e473b1-9cd3-49a7-a529-0f9db0251be6"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/32ecf8b8-f6f9-4d65-9a65-2bf428059f4d"}}},"level":"info","message":"received a callback","requestID":"164992591a4adb48d0635ad5581a29b2"} device-1 | {"data":{"peerconnection":"32ecf8b8-f6f9-4d65-9a65-2bf428059f4d","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"a51d9010-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"DELETE /peerconnections/32ecf8b8-f6f9-4d65-9a65-2bf428059f4d 204 46ms","method":"DELETE","requestID":"a51d9010-6a0a-11ef-9b41-2363e6623fc8","responseTime":46,"status":204,"url":"/peerconnections/32ecf8b8-f6f9-4d65-9a65-2bf428059f4d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9916a69e-f421-497b-92e9-f871175cca8d"},"level":"info","message":"Successfully finished experiment","requestID":"86fdf5c396ef54f0da1a9b806777ba48"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a5275410-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":728,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:02Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd38b66-479d-46bb-875b-d29b659c07cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2974167a-7dc2-4c01-826c-7da6c68ed433","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377942.489144} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":728,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.855765,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/edd38b66-479d-46bb-875b-d29b659c07cf","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a5275410-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/edd38b66-479d-46bb-875b-d29b659c07cf","object_type":"device","rebac_allow":false,"scope_allow":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":"a5275410-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a5275410-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/edd38b66-479d-46bb-875b-d29b659c07cf/signaling 200 15ms","method":"POST","requestID":"a5275410-6a0a-11ef-9b41-2363e6623fc8","responseTime":15,"status":200,"url":"/devices/edd38b66-479d-46bb-875b-d29b659c07cf/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a52a1330-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9916a69e-f421-497b-92e9-f871175cca8d': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9916a69e-f421-497b-92e9-f871175cca8d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"9d5add2d-a639-4d81-b55d-f0df4e3ef016","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377942.4996004} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"68e10688-1f95-4766-bb6e-dc440e306f26","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377942.500117} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"86fdf5c396ef54f0da1a9b806777ba48","responseTime":25,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":729,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:02Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0e473b1-9cd3-49a7-a529-0f9db0251be6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e051ff8c-1ada-4e92-8bdc-11b727dc9f13","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377942.506503} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":729,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.334367,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a52a1330-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6","object_type":"device","rebac_allow":false,"scope_allow":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":"a52a1330-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a52a1330-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6/signaling 200 15ms","method":"POST","requestID":"a52a1330-6a0a-11ef-9b41-2363e6623fc8","responseTime":15,"status":200,"url":"/devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/9916a69e-f421-497b-92e9-f871175cca8d","requestID":"86fdf5c396ef54f0da1a9b806777ba48"} gateway-1 | {"time_local":"03/Sep/2024:15:39:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/9916a69e-f421-497b-92e9-f871175cca8d 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":"86fdf5c396ef54f0da1a9b806777ba48"} experiment-1 | {"level":"info","message":"DELETE /experiments/9916a69e-f421-497b-92e9-f871175cca8d 204 172ms","method":"DELETE","requestID":"86fdf5c396ef54f0da1a9b806777ba48","responseTime":172,"status":204,"url":"/experiments/9916a69e-f421-497b-92e9-f871175cca8d"} gateway-1 | {"time_local":"03/Sep/2024:15:39:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3194","request_time":"4.227","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"5245af150dfe179a5cbeacd0678dc212"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 139ms","method":"POST","requestID":"2818ca467d3f78075706e0f7fbe98202","responseTime":139,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:39:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.142","http_referrer":"","http_user_agent":"node-fetch","requestID":"2818ca467d3f78075706e0f7fbe98202"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 138ms","method":"POST","requestID":"164992591a4adb48d0635ad5581a29b2","responseTime":138,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:39:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.143","http_referrer":"","http_user_agent":"node-fetch","requestID":"164992591a4adb48d0635ad5581a29b2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0Mn0.Z8xTqOu1cuv9oooMtWjZtMj_mOBOsfqk_7KT64BofOA","level":"info","message":"auth send jwt","requestID":"0a77a23156813f13fdb9319dfc00d2fb"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0a77a23156813f13fdb9319dfc00d2fb","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"0a77a23156813f13fdb9319dfc00d2fb"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":730,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:02Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":730,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.289605,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:02Z"} gateway-1 | {"time_local":"03/Sep/2024:15:39:02 +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.695","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"2c92d8c488c3c935457ff35f40e3ff42"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"0a77a23156813f13fdb9319dfc00d2fb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377942,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0Mn0.Z8xTqOu1cuv9oooMtWjZtMj_mOBOsfqk_7KT64BofOA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0a77a23156813f13fdb9319dfc00d2fb","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/edd38b66-479d-46bb-875b-d29b659c07cf' 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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c7d9850-dcf0-44cb-bd4d-d2cab518596f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a340409d-9cc4-4925-8f27-1b08227c344f","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377942.6061995} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0a77a23156813f13fdb9319dfc00d2fb","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"21ccbce5-bd22-4fc5-8625-66749f79ebc1","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377942.611098} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/e0e473b1-9cd3-49a7-a529-0f9db0251be6' closed"} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"0a77a23156813f13fdb9319dfc00d2fb","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c7d9850-dcf0-44cb-bd4d-d2cab518596f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"bfb649d4-704e-42c9-8e75-c155847c0cb2","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377942.6255443} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cb051835-00b2-4e24-b710-f683230d3d32","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377942.6256623} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"0a77a23156813f13fdb9319dfc00d2fb","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c7d9850-dcf0-44cb-bd4d-d2cab518596f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c7d9850-dcf0-44cb-bd4d-d2cab518596f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:02.625513759Z"}]},"request_id":"03e36327-6949-42a0-9862-62ff46623668","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377942.62978} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"0a77a23156813f13fdb9319dfc00d2fb","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"0a77a23156813f13fdb9319dfc00d2fb"} gateway-1 | {"time_local":"03/Sep/2024:15:39:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0a77a23156813f13fdb9319dfc00d2fb"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"0a77a23156813f13fdb9319dfc00d2fb","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0Mn0.Z8xTqOu1cuv9oooMtWjZtMj_mOBOsfqk_7KT64BofOA","level":"info","message":"auth send jwt","requestID":"4d7526ea9afa902d08fb88b51b428384"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4d7526ea9afa902d08fb88b51b428384","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"4d7526ea9afa902d08fb88b51b428384"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":731,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:02Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":731,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.968635,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:02Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"4d7526ea9afa902d08fb88b51b428384","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377942,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0Mn0.Z8xTqOu1cuv9oooMtWjZtMj_mOBOsfqk_7KT64BofOA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4d7526ea9afa902d08fb88b51b428384","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"1f3d9c38-a0fb-4043-8715-8194a1307bdc","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377942.6549776} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"4d7526ea9afa902d08fb88b51b428384","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a83ceb4e-623e-477a-9b17-2db15b959db3","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377942.6597211} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"4d7526ea9afa902d08fb88b51b428384","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"1955b7f8-447f-4dc8-a866-37835162f621","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377942.670218} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9605b3d0-2301-4ddf-958b-e3614731dba6","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377942.6702807} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"4d7526ea9afa902d08fb88b51b428384","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:02.670184484Z"}]},"request_id":"2042bc17-b91a-4133-85b7-9c65b833c13b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377942.6742253} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4d7526ea9afa902d08fb88b51b428384","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4d7526ea9afa902d08fb88b51b428384"} gateway-1 | {"time_local":"03/Sep/2024:15:39:02 +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":"4d7526ea9afa902d08fb88b51b428384"} device-1 | {"level":"info","message":"POST /devices? 201 39ms","method":"POST","requestID":"4d7526ea9afa902d08fb88b51b428384","responseTime":39,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0M30.vlYutBQDN-jw95T-LPdE2PE62smBUAUOR9RgnTqOnww","level":"info","message":"auth send jwt","requestID":"11a9a1a86c12ba73a2e12a8effa3981e"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"11a9a1a86c12ba73a2e12a8effa3981e","responseTime":6,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0M30.vlYutBQDN-jw95T-LPdE2PE62smBUAUOR9RgnTqOnww","level":"info","message":"auth send jwt","requestID":"f2fd9d26ca71136ceff6270e9aa34081"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"11a9a1a86c12ba73a2e12a8effa3981e"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f2fd9d26ca71136ceff6270e9aa34081","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f2fd9d26ca71136ceff6270e9aa34081"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":732,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:03Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":732,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.693959,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:03Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":733,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:03Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"11a9a1a86c12ba73a2e12a8effa3981e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377943,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0M30.vlYutBQDN-jw95T-LPdE2PE62smBUAUOR9RgnTqOnww"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"11a9a1a86c12ba73a2e12a8effa3981e","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":733,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.988561,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:03Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"f2fd9d26ca71136ceff6270e9aa34081","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377943,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0M30.vlYutBQDN-jw95T-LPdE2PE62smBUAUOR9RgnTqOnww"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f2fd9d26ca71136ceff6270e9aa34081","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:02.670184484Z"}]},"request_id":"4bcfff45-9943-4cc6-9299-1ed64513d315","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377943.1378157} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"11a9a1a86c12ba73a2e12a8effa3981e","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c7d9850-dcf0-44cb-bd4d-d2cab518596f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c7d9850-dcf0-44cb-bd4d-d2cab518596f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:02.625513759Z"}]},"request_id":"0978c468-3682-4a00-8697-bbca5dd4bc2b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377943.1387515} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f2fd9d26ca71136ceff6270e9aa34081","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"62236ff9-3f24-4ef1-ad6f-4a6b86a96b3a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377943.142494} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"11a9a1a86c12ba73a2e12a8effa3981e","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3c7e7667-6c3b-4ef4-ab68-70e7ab315793","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377943.1439805} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"f2fd9d26ca71136ceff6270e9aa34081","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c7d9850-dcf0-44cb-bd4d-d2cab518596f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c7d9850-dcf0-44cb-bd4d-d2cab518596f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:02.625513759Z"}]},"request_id":"37cbae60-f842-4937-90c9-ef57decbabee","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377943.1473312} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f2fd9d26ca71136ceff6270e9aa34081","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f2fd9d26ca71136ceff6270e9aa34081"} gateway-1 | {"time_local":"03/Sep/2024:15:39:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.032","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"f2fd9d26ca71136ceff6270e9aa34081"} device-1 | {"level":"info","message":"PATCH /devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f 200 23ms","method":"PATCH","requestID":"f2fd9d26ca71136ceff6270e9aa34081","responseTime":23,"status":200,"url":"/devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0M30.vlYutBQDN-jw95T-LPdE2PE62smBUAUOR9RgnTqOnww","level":"info","message":"auth send jwt","requestID":"c238e96b81cfa7db6a458f9676d548c0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c238e96b81cfa7db6a458f9676d548c0","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c238e96b81cfa7db6a458f9676d548c0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:02.670184484Z"}]},"request_id":"af19798d-cbf6-4b8c-90ec-f3697f4357cd","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377943.1592472} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"11a9a1a86c12ba73a2e12a8effa3981e","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":734,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:03Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":734,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.741942,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:03Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"11a9a1a86c12ba73a2e12a8effa3981e"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"c238e96b81cfa7db6a458f9676d548c0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377943,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0M30.vlYutBQDN-jw95T-LPdE2PE62smBUAUOR9RgnTqOnww"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c238e96b81cfa7db6a458f9676d548c0","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"03/Sep/2024:15:39:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.045","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"11a9a1a86c12ba73a2e12a8effa3981e"} device-1 | {"level":"info","message":"PATCH /devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5 200 37ms","method":"PATCH","requestID":"11a9a1a86c12ba73a2e12a8effa3981e","responseTime":37,"status":200,"url":"/devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0M30.vlYutBQDN-jw95T-LPdE2PE62smBUAUOR9RgnTqOnww","level":"info","message":"auth send jwt","requestID":"fc7262cf6964600bfe6258b959de14ed"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"fc7262cf6964600bfe6258b959de14ed","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"fc7262cf6964600bfe6258b959de14ed"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":735,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:03Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":735,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.802343,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:03Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"fc7262cf6964600bfe6258b959de14ed","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377943,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0M30.vlYutBQDN-jw95T-LPdE2PE62smBUAUOR9RgnTqOnww"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fc7262cf6964600bfe6258b959de14ed","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c238e96b81cfa7db6a458f9676d548c0"} gateway-1 | {"time_local":"03/Sep/2024:15:39:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"c238e96b81cfa7db6a458f9676d548c0"} device-1 | {"level":"info","message":"POST /devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f/websocket 200 19ms","method":"POST","requestID":"c238e96b81cfa7db6a458f9676d548c0","responseTime":19,"status":200,"url":"/devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"fc7262cf6964600bfe6258b959de14ed"} device-1 | {"level":"info","message":"POST /devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5/websocket 200 15ms","method":"POST","requestID":"fc7262cf6964600bfe6258b959de14ed","responseTime":15,"status":200,"url":"/devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5/websocket"} gateway-1 | {"time_local":"03/Sep/2024:15:39:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.021","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"fc7262cf6964600bfe6258b959de14ed"} device-1 | {"level":"info","message":"device 'http://localhost/devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0M30.vlYutBQDN-jw95T-LPdE2PE62smBUAUOR9RgnTqOnww","level":"info","message":"auth send jwt","requestID":"a92ee547cbd903c828e46ff7a8002579"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a92ee547cbd903c828e46ff7a8002579","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a92ee547cbd903c828e46ff7a8002579"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":736,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:03Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":736,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.339759,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a92ee547cbd903c828e46ff7a8002579","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377943,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0M30.vlYutBQDN-jw95T-LPdE2PE62smBUAUOR9RgnTqOnww"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a92ee547cbd903c828e46ff7a8002579","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c7d9850-dcf0-44cb-bd4d-d2cab518596f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c7d9850-dcf0-44cb-bd4d-d2cab518596f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:02.625513759Z"}]},"request_id":"bbeddb72-d450-4c27-a7e2-a2d1f4bd7358","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377943.2188292} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a92ee547cbd903c828e46ff7a8002579","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a92ee547cbd903c828e46ff7a8002579"} gateway-1 | {"time_local":"03/Sep/2024:15:39:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f? 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":"a92ee547cbd903c828e46ff7a8002579"} device-1 | {"level":"info","message":"GET /devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f? 200 11ms","method":"GET","requestID":"a92ee547cbd903c828e46ff7a8002579","responseTime":11,"status":200,"url":"/devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0M30.vlYutBQDN-jw95T-LPdE2PE62smBUAUOR9RgnTqOnww","level":"info","message":"auth send jwt","requestID":"c0a5f605a61b79f58c206a71d21d35e7"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c0a5f605a61b79f58c206a71d21d35e7","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c0a5f605a61b79f58c206a71d21d35e7"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":737,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:03Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":737,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.143766,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"c0a5f605a61b79f58c206a71d21d35e7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377943,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0M30.vlYutBQDN-jw95T-LPdE2PE62smBUAUOR9RgnTqOnww"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c0a5f605a61b79f58c206a71d21d35e7","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:02.670184484Z"}]},"request_id":"c9b74fcb-92da-4bf5-b9cf-f72922493d20","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377943.2364767} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c0a5f605a61b79f58c206a71d21d35e7","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c0a5f605a61b79f58c206a71d21d35e7"} gateway-1 | {"time_local":"03/Sep/2024:15:39:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5? 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":"c0a5f605a61b79f58c206a71d21d35e7"} device-1 | {"level":"info","message":"GET /devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5? 200 14ms","method":"GET","requestID":"c0a5f605a61b79f58c206a71d21d35e7","responseTime":14,"status":200,"url":"/devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0M30.vlYutBQDN-jw95T-LPdE2PE62smBUAUOR9RgnTqOnww","level":"info","message":"auth send jwt","requestID":"cda5a8c4219403436f16e81b149097c7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"cda5a8c4219403436f16e81b149097c7","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"cda5a8c4219403436f16e81b149097c7"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":738,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:03Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":738,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.788774,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"cda5a8c4219403436f16e81b149097c7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377943,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0M30.vlYutBQDN-jw95T-LPdE2PE62smBUAUOR9RgnTqOnww"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"cda5a8c4219403436f16e81b149097c7","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cebb8abc-a773-4617-a060-fef83f003fba"},"level":"info","message":"Attempting to run experiment","requestID":"cda5a8c4219403436f16e81b149097c7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cebb8abc-a773-4617-a060-fef83f003fba"},"level":"info","message":"Attempting to book experiment","requestID":"cda5a8c4219403436f16e81b149097c7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cebb8abc-a773-4617-a060-fef83f003fba"},"level":"info","message":"Successfully booked experiment","requestID":"cda5a8c4219403436f16e81b149097c7"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a5a1db40-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a5a20250-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":739,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:03Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":739,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.59426,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:03Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":740,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a5a1db40-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377943,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0M30.vlYutBQDN-jw95T-LPdE2PE62smBUAUOR9RgnTqOnww"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a5a1db40-6a0a-11ef-9b41-2363e6623fc8","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":740,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.555378,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a5a20250-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377943,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0M30.vlYutBQDN-jw95T-LPdE2PE62smBUAUOR9RgnTqOnww"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a5a20250-6a0a-11ef-9b41-2363e6623fc8","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c7d9850-dcf0-44cb-bd4d-d2cab518596f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c7d9850-dcf0-44cb-bd4d-d2cab518596f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:02.625513759Z"}]},"request_id":"d1f881a5-8974-48dc-ab7f-02230d6d61ee","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377943.2916906} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a5a1db40-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:02.670184484Z"}]},"request_id":"47086d58-1444-4528-b74a-7a254083dbcf","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377943.2923422} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a5a20250-6a0a-11ef-9b41-2363e6623fc8","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a5a1db40-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f? 200 14ms","method":"GET","requestID":"a5a1db40-6a0a-11ef-9b41-2363e6623fc8","responseTime":14,"status":200,"url":"/devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a5a20250-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5? 200 14ms","method":"GET","requestID":"a5a20250-6a0a-11ef-9b41-2363e6623fc8","responseTime":14,"status":200,"url":"/devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cebb8abc-a773-4617-a060-fef83f003fba"},"level":"info","message":"Setting up experiment","requestID":"cda5a8c4219403436f16e81b149097c7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cebb8abc-a773-4617-a060-fef83f003fba"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"cda5a8c4219403436f16e81b149097c7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cebb8abc-a773-4617-a060-fef83f003fba"},"level":"info","message":"Successfully locked booking for experiment","requestID":"cda5a8c4219403436f16e81b149097c7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cebb8abc-a773-4617-a060-fef83f003fba"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"cda5a8c4219403436f16e81b149097c7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cebb8abc-a773-4617-a060-fef83f003fba"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"cda5a8c4219403436f16e81b149097c7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cebb8abc-a773-4617-a060-fef83f003fba"},"level":"info","message":"Attempting to update booking for experiment","requestID":"cda5a8c4219403436f16e81b149097c7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cebb8abc-a773-4617-a060-fef83f003fba"},"level":"info","message":"Successfully updated booking for experiment","requestID":"cda5a8c4219403436f16e81b149097c7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cebb8abc-a773-4617-a060-fef83f003fba"},"level":"info","message":"Successfully set up experiment","requestID":"cda5a8c4219403436f16e81b149097c7"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a5ac89a0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a5acb0b0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a5acfed0-6a0a-11ef-9b41-2363e6623fc8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cebb8abc-a773-4617-a060-fef83f003fba"},"level":"info","message":"Successfully running experiment","requestID":"cda5a8c4219403436f16e81b149097c7"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":741,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:03Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":741,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.92825,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:03Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":742,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a5ac89a0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377943,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0M30.vlYutBQDN-jw95T-LPdE2PE62smBUAUOR9RgnTqOnww"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a5ac89a0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":742,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.603535,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a5acb0b0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377943,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0M30.vlYutBQDN-jw95T-LPdE2PE62smBUAUOR9RgnTqOnww"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a5acb0b0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45934","level":"info","msg":"Received request.","req_id":743,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:03Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:02.670184484Z"}]},"request_id":"8cf80dbe-2459-4582-a2d4-630ba4164a16","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377943.3658562} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c7d9850-dcf0-44cb-bd4d-d2cab518596f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"33bb4e3b-c758-4bfa-ab66-1d2180fbdb9b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377943.3663995} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a5acb0b0-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c7d9850-dcf0-44cb-bd4d-d2cab518596f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c7d9850-dcf0-44cb-bd4d-d2cab518596f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:02.625513759Z"}]},"request_id":"63828802-f016-408a-8473-bae948735f34","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377943.366743} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a5ac89a0-6a0a-11ef-9b41-2363e6623fc8","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:45934","level":"info","msg":"Sent response.","req_id":743,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.888728,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a5acfed0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f","object_type":"device","rebac_allow":false,"scope_allow":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":"a5acfed0-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a5acb0b0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5? 200 20ms","method":"GET","requestID":"a5acb0b0-6a0a-11ef-9b41-2363e6623fc8","responseTime":20,"status":200,"url":"/devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a5ac89a0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f? 200 23ms","method":"GET","requestID":"a5ac89a0-6a0a-11ef-9b41-2363e6623fc8","responseTime":23,"status":200,"url":"/devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a5acfed0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f/signaling 200 21ms","method":"POST","requestID":"a5acfed0-6a0a-11ef-9b41-2363e6623fc8","responseTime":21,"status":200,"url":"/devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f/signaling"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcebb8abc-a773-4617-a060-fef83f003fba#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcebb8abc-a773-4617-a060-fef83f003fba","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"2fe7c7b2-ba29-4cf1-9a7f-df1e12c2d09c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377943.3789804} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"de00fac3-1e0d-4fcc-8615-964a151ed281","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377943.3793218} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a5b08140-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"cda5a8c4219403436f16e81b149097c7","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a5b0cf60-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:45934","level":"info","msg":"Received request.","req_id":744,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:03Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":745,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:03Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c7d9850-dcf0-44cb-bd4d-d2cab518596f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"86935916-a54a-4ef9-ba8b-7f122f904615","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377943.3850772} authorization-1 | {"client_addr":"127.0.0.1:45934","level":"info","msg":"Sent response.","req_id":744,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.695311,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a5b08140-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a5b08140-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7951107a-3ced-4e34-8535-9331076c3f8b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377943.3870215} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":745,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.802693,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:03Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/cebb8abc-a773-4617-a060-fef83f003fba","user":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"cda5a8c4219403436f16e81b149097c7"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a5b0cf60-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","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":"03/Sep/2024:15:39:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1219","request_time":"0.146","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cda5a8c4219403436f16e81b149097c7"} experiment-1 | {"level":"info","message":"POST /experiments? 201 142ms","method":"POST","requestID":"cda5a8c4219403436f16e81b149097c7","responseTime":142,"status":201,"url":"/experiments?"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a5b0cf60-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a5b08140-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f/signaling 200 11ms","method":"POST","requestID":"a5b08140-6a0a-11ef-9b41-2363e6623fc8","responseTime":11,"status":200,"url":"/devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a5b0cf60-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5/signaling 200 10ms","method":"POST","requestID":"a5b0cf60-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a5b27d10-6a0a-11ef-9b41-2363e6623fc8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0M30.vlYutBQDN-jw95T-LPdE2PE62smBUAUOR9RgnTqOnww","level":"info","message":"auth send jwt","requestID":"b940aa22dda83fa88d516f0f94dbfce1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b940aa22dda83fa88d516f0f94dbfce1","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b940aa22dda83fa88d516f0f94dbfce1"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":746,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:03Z"} authorization-1 | {"client_addr":"127.0.0.1:45934","level":"info","msg":"Received request.","req_id":747,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:03Z"} authorization-1 | {"client_addr":"127.0.0.1:45934","level":"info","msg":"Sent response.","req_id":747,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.629712,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"b940aa22dda83fa88d516f0f94dbfce1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377943,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0M30.vlYutBQDN-jw95T-LPdE2PE62smBUAUOR9RgnTqOnww"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b940aa22dda83fa88d516f0f94dbfce1","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"91e8fb0f-b2a1-4897-bfae-7b0bb3c3de17","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377943.3980825} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":746,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.084376,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a5b27d10-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a5b27d10-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c7d9850-dcf0-44cb-bd4d-d2cab518596f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c7d9850-dcf0-44cb-bd4d-d2cab518596f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:02.625513759Z"}]},"request_id":"4f2407a8-d5b8-4c48-8a52-5730cd1ebfc1","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377943.4012215} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a5b27d10-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b940aa22dda83fa88d516f0f94dbfce1","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5/signaling 200 9ms","method":"POST","requestID":"a5b27d10-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cebb8abc-a773-4617-a060-fef83f003fba"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"cda5a8c4219403436f16e81b149097c7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cebb8abc-a773-4617-a060-fef83f003fba"},"level":"info","message":"Building connection plan","requestID":"cda5a8c4219403436f16e81b149097c7"} 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":"915f8b65-7fd0-4c6b-91d8-b0b6a75de66e"},{"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":"755b91ec-28ba-4901-84ce-00e0eb1427e8"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"fa0b61ec-371a-44b6-9ad1-71aa65dac69b"}]},"level":"info","message":"Built pairwise service configurations","requestID":"cda5a8c4219403436f16e81b149097c7"} 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/0c7d9850-dcf0-44cb-bd4d-d2cab518596f"},{"config":{"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/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"cda5a8c4219403436f16e81b149097c7"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"a5b42ac0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b940aa22dda83fa88d516f0f94dbfce1"} device-1 | {"level":"info","message":"GET /devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f? 200 12ms","method":"GET","requestID":"b940aa22dda83fa88d516f0f94dbfce1","responseTime":12,"status":200,"url":"/devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f?"} gateway-1 | {"time_local":"03/Sep/2024:15:39:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f? 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":"b940aa22dda83fa88d516f0f94dbfce1"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":748,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:03Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":748,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.741671,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a5b42ac0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377943,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0M30.vlYutBQDN-jw95T-LPdE2PE62smBUAUOR9RgnTqOnww"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a5b42ac0-6a0a-11ef-9b41-2363e6623fc8","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0M30.vlYutBQDN-jw95T-LPdE2PE62smBUAUOR9RgnTqOnww","level":"info","message":"auth send jwt","requestID":"94c49115b13033ddf37cc545a22c975e"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"94c49115b13033ddf37cc545a22c975e","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"94c49115b13033ddf37cc545a22c975e"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":749,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:03Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":749,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.646373,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"94c49115b13033ddf37cc545a22c975e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377943,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0M30.vlYutBQDN-jw95T-LPdE2PE62smBUAUOR9RgnTqOnww"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"94c49115b13033ddf37cc545a22c975e","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","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%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"ce118f0e-10a7-4cb8-8da3-df30c45967b8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377943.4179688} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7a5761f9-07dc-44aa-bd9e-c6b24e5d6f9c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377943.4182382} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:02.670184484Z"}]},"request_id":"d071982e-bbb3-49b8-901c-b8b9113822cc","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377943.4188168} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"a5b42ac0-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"94c49115b13033ddf37cc545a22c975e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"94c49115b13033ddf37cc545a22c975e"} device-1 | {"level":"info","message":"GET /devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5? 200 12ms","method":"GET","requestID":"94c49115b13033ddf37cc545a22c975e","responseTime":12,"status":200,"url":"/devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5?"} gateway-1 | {"time_local":"03/Sep/2024:15:39:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5? 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":"94c49115b13033ddf37cc545a22c975e"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"a5b42ac0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"a5b42ac0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/db90fae0-6807-4616-989f-04c7b3303d55'","requestID":"a5b42ac0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/db90fae0-6807-4616-989f-04c7b3303d55'","requestID":"a5b42ac0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"a5b42ac0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 27ms","method":"POST","requestID":"a5b42ac0-6a0a-11ef-9b41-2363e6623fc8","responseTime":27,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"a5b42ac0-6a0a-11ef-9b41-2363e6623fc8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cebb8abc-a773-4617-a060-fef83f003fba"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"cda5a8c4219403436f16e81b149097c7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a5bbf2f0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":750,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:03Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c7d9850-dcf0-44cb-bd4d-d2cab518596f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0563af54-7add-46d5-8938-e15e372c6a8c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377943.4596548} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":750,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.365487,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a5bbf2f0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a5bbf2f0-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a5bbf2f0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f/signaling 200 8ms","method":"POST","requestID":"a5bbf2f0-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a5bd7990-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":751,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:03Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dab650f1-0e47-4dfa-b742-3aff9690a020","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377943.4695272} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":751,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.63075,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a5bd7990-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a5bd7990-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a5bd7990-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5/signaling 200 10ms","method":"POST","requestID":"a5bd7990-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5/signaling"} device-1 | {"device":"7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","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":"db90fae0-6807-4616-989f-04c7b3303d55","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"0c7d9850-dcf0-44cb-bd4d-d2cab518596f","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":"db90fae0-6807-4616-989f-04c7b3303d55","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"0c7d9850-dcf0-44cb-bd4d-d2cab518596f","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":"0c7d9850-dcf0-44cb-bd4d-d2cab518596f","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":"0c7d9850-dcf0-44cb-bd4d-d2cab518596f","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":"0c7d9850-dcf0-44cb-bd4d-d2cab518596f","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/db90fae0-6807-4616-989f-04c7b3303d55' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"db90fae0-6807-4616-989f-04c7b3303d55","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"769dc1460101a7d9b1f7f4ae50ca3d9c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"769dc1460101a7d9b1f7f4ae50ca3d9c","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/0c7d9850-dcf0-44cb-bd4d-d2cab518596f"},{"config":{"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/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/db90fae0-6807-4616-989f-04c7b3303d55"}}},"level":"info","message":"received a callback","requestID":"769dc1460101a7d9b1f7f4ae50ca3d9c"} device-1 | {"device":"7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","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":"7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","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":"7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","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 6ms","method":"POST","requestID":"769dc1460101a7d9b1f7f4ae50ca3d9c","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:39:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"769dc1460101a7d9b1f7f4ae50ca3d9c"} device-1 | {"data":{"peerconnection":"db90fae0-6807-4616-989f-04c7b3303d55","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"0c7d9850-dcf0-44cb-bd4d-d2cab518596f","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":"7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","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":"7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","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":"0c7d9850-dcf0-44cb-bd4d-d2cab518596f","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":"db90fae0-6807-4616-989f-04c7b3303d55","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/db90fae0-6807-4616-989f-04c7b3303d55' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"db90fae0-6807-4616-989f-04c7b3303d55","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9ecdec7e09840156fb1ec96518122f06","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"9ecdec7e09840156fb1ec96518122f06","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":"connected","url":"http://localhost/devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f"},{"config":{"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/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/db90fae0-6807-4616-989f-04c7b3303d55"}}},"level":"info","message":"received a callback","requestID":"9ecdec7e09840156fb1ec96518122f06"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"a6fb9ee0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":752,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:05Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fdb90fae0-6807-4616-989f-04c7b3303d55","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"31d7e828-3337-48d7-9bed-ac774f062193","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377945.5561635} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":752,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.156916,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/db90fae0-6807-4616-989f-04c7b3303d55","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a6fb9ee0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/db90fae0-6807-4616-989f-04c7b3303d55","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":"a6fb9ee0-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"a6fb9ee0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /peerconnections/db90fae0-6807-4616-989f-04c7b3303d55 200 11ms","method":"GET","requestID":"a6fb9ee0-6a0a-11ef-9b41-2363e6623fc8","responseTime":11,"status":200,"url":"/peerconnections/db90fae0-6807-4616-989f-04c7b3303d55"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 44ms","method":"POST","requestID":"9ecdec7e09840156fb1ec96518122f06","responseTime":44,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:39:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch","requestID":"9ecdec7e09840156fb1ec96518122f06"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a7016b40-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":753,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:05Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c7d9850-dcf0-44cb-bd4d-d2cab518596f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aa119e22-7ffd-4122-be94-24932f73656a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377945.5931072} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":753,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.295246,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a7016b40-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a7016b40-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a7016b40-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f/signaling 200 10ms","method":"POST","requestID":"a7016b40-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a7036710-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":754,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:05Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"12c3b268-1e57-42df-aee4-5666c9aae788","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377945.6063876} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":754,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.439388,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a7036710-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"a7036710-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a7036710-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5/signaling 200 11ms","method":"POST","requestID":"a7036710-6a0a-11ef-9b41-2363e6623fc8","responseTime":11,"status":200,"url":"/devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0NX0.ItzUJcvueDrbwPBAtBf0BEeWx8mVGUJ1A8JKHghNn2o","level":"info","message":"auth send jwt","requestID":"b8b60ef7efe1a0604b66bd4d18ec77af"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b8b60ef7efe1a0604b66bd4d18ec77af","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/cebb8abc-a773-4617-a060-fef83f003fba","requestID":"b8b60ef7efe1a0604b66bd4d18ec77af"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":755,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:05Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":755,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":2.072227,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/cebb8abc-a773-4617-a060-fef83f003fba","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"b8b60ef7efe1a0604b66bd4d18ec77af","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/cebb8abc-a773-4617-a060-fef83f003fba","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377945,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0NX0.ItzUJcvueDrbwPBAtBf0BEeWx8mVGUJ1A8JKHghNn2o"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b8b60ef7efe1a0604b66bd4d18ec77af","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/cebb8abc-a773-4617-a060-fef83f003fba","requestID":"b8b60ef7efe1a0604b66bd4d18ec77af"} gateway-1 | {"time_local":"03/Sep/2024:15:39:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/cebb8abc-a773-4617-a060-fef83f003fba HTTP/1.1","status": "200","body_bytes_sent":"1292","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b8b60ef7efe1a0604b66bd4d18ec77af"} experiment-1 | {"level":"info","message":"GET /experiments/cebb8abc-a773-4617-a060-fef83f003fba 200 15ms","method":"GET","requestID":"b8b60ef7efe1a0604b66bd4d18ec77af","responseTime":15,"status":200,"url":"/experiments/cebb8abc-a773-4617-a060-fef83f003fba"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0NX0.ItzUJcvueDrbwPBAtBf0BEeWx8mVGUJ1A8JKHghNn2o","level":"info","message":"auth send jwt","requestID":"efe24ca5e03eb1aeed76395b927c5915"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"efe24ca5e03eb1aeed76395b927c5915","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/cebb8abc-a773-4617-a060-fef83f003fba","requestID":"efe24ca5e03eb1aeed76395b927c5915"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":756,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:05Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":756,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.284549,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:05Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/cebb8abc-a773-4617-a060-fef83f003fba","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"efe24ca5e03eb1aeed76395b927c5915","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/cebb8abc-a773-4617-a060-fef83f003fba","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377945,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0NX0.ItzUJcvueDrbwPBAtBf0BEeWx8mVGUJ1A8JKHghNn2o"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"efe24ca5e03eb1aeed76395b927c5915","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cebb8abc-a773-4617-a060-fef83f003fba"},"level":"info","message":"Attempting to finish experiment","requestID":"efe24ca5e03eb1aeed76395b927c5915"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"a70effd0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":757,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:05Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":757,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.873504,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:05Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/db90fae0-6807-4616-989f-04c7b3303d55","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a70effd0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:http://localhost/peerconnections/db90fae0-6807-4616-989f-04c7b3303d55","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377945,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0NX0.ItzUJcvueDrbwPBAtBf0BEeWx8mVGUJ1A8JKHghNn2o"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a70effd0-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"device":"0c7d9850-dcf0-44cb-bd4d-d2cab518596f","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":"0c7d9850-dcf0-44cb-bd4d-d2cab518596f","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":"0c7d9850-dcf0-44cb-bd4d-d2cab518596f","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":"7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","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":"7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","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":"7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","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/db90fae0-6807-4616-989f-04c7b3303d55' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/db90fae0-6807-4616-989f-04c7b3303d55' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"db90fae0-6807-4616-989f-04c7b3303d55","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fdb90fae0-6807-4616-989f-04c7b3303d55': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fdb90fae0-6807-4616-989f-04c7b3303d55","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"866e4bbb-3d8f-45a7-a7ff-9e144b9ca584","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377945.7057395} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3c606e696594f7114435f3fe2ad336c5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"3c606e696594f7114435f3fe2ad336c5","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"81dde736-2c46-4cd0-88e0-0f7a19912e5c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377945.706489} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"227c748c5fc15579e5a251cd7ba6d3e3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/0c7d9850-dcf0-44cb-bd4d-d2cab518596f"},{"config":{"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/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/db90fae0-6807-4616-989f-04c7b3303d55"}}},"level":"info","message":"received a callback","requestID":"3c606e696594f7114435f3fe2ad336c5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"a70effd0-6a0a-11ef-9b41-2363e6623fc8","responseTime":15,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"227c748c5fc15579e5a251cd7ba6d3e3","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/0c7d9850-dcf0-44cb-bd4d-d2cab518596f"},{"config":{"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/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/db90fae0-6807-4616-989f-04c7b3303d55"}}},"level":"info","message":"received a callback","requestID":"227c748c5fc15579e5a251cd7ba6d3e3"} device-1 | {"data":{"peerconnection":"db90fae0-6807-4616-989f-04c7b3303d55","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"a70effd0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"DELETE /peerconnections/db90fae0-6807-4616-989f-04c7b3303d55 204 52ms","method":"DELETE","requestID":"a70effd0-6a0a-11ef-9b41-2363e6623fc8","responseTime":52,"status":204,"url":"/peerconnections/db90fae0-6807-4616-989f-04c7b3303d55"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cebb8abc-a773-4617-a060-fef83f003fba"},"level":"info","message":"Successfully finished experiment","requestID":"efe24ca5e03eb1aeed76395b927c5915"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a71b0dc0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":758,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:05Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c7d9850-dcf0-44cb-bd4d-d2cab518596f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"245a890f-25b9-415d-9b58-d5e7fe3ac02e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377945.763354} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":758,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.951336,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a71b0dc0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f","object_type":"device","rebac_allow":false,"scope_allow":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":"a71b0dc0-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcebb8abc-a773-4617-a060-fef83f003fba': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcebb8abc-a773-4617-a060-fef83f003fba","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"aed230cf-76a7-4556-a6a4-fd3cb8a87bdf","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377945.7696276} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a71b0dc0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"007035af-2ab3-463f-8f87-92739d25352f","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377945.7701244} device-1 | {"level":"info","message":"POST /devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f/signaling 200 15ms","method":"POST","requestID":"a71b0dc0-6a0a-11ef-9b41-2363e6623fc8","responseTime":15,"status":200,"url":"/devices/0c7d9850-dcf0-44cb-bd4d-d2cab518596f/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"efe24ca5e03eb1aeed76395b927c5915","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a71dcce0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":759,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:05Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"949cd1c6-c1ae-4c05-9716-9a42f7ba76ac","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377945.7806246} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":759,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.922253,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a71dcce0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"a71dcce0-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a71dcce0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5/signaling 200 13ms","method":"POST","requestID":"a71dcce0-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/devices/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/cebb8abc-a773-4617-a060-fef83f003fba","requestID":"efe24ca5e03eb1aeed76395b927c5915"} gateway-1 | {"time_local":"03/Sep/2024:15:39:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/cebb8abc-a773-4617-a060-fef83f003fba HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.184","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"efe24ca5e03eb1aeed76395b927c5915"} experiment-1 | {"level":"info","message":"DELETE /experiments/cebb8abc-a773-4617-a060-fef83f003fba 204 179ms","method":"DELETE","requestID":"efe24ca5e03eb1aeed76395b927c5915","responseTime":179,"status":204,"url":"/experiments/cebb8abc-a773-4617-a060-fef83f003fba"} gateway-1 | {"time_local":"03/Sep/2024:15:39:05 +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.665","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"c6b5de9632d5d52660b58f696a8ea811"} gateway-1 | {"time_local":"03/Sep/2024:15:39:05 +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.657","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"fac7328293d038e7e92ebe8fec639a51"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 136ms","method":"POST","requestID":"3c606e696594f7114435f3fe2ad336c5","responseTime":136,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:39:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.143","http_referrer":"","http_user_agent":"node-fetch","requestID":"3c606e696594f7114435f3fe2ad336c5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 136ms","method":"POST","requestID":"227c748c5fc15579e5a251cd7ba6d3e3","responseTime":136,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:39:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.143","http_referrer":"","http_user_agent":"node-fetch","requestID":"227c748c5fc15579e5a251cd7ba6d3e3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0NX0.ItzUJcvueDrbwPBAtBf0BEeWx8mVGUJ1A8JKHghNn2o","level":"info","message":"auth send jwt","requestID":"829e8198aa7352b2f4dd33bb0276d315"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"829e8198aa7352b2f4dd33bb0276d315","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/7bc22dd5-1f37-4c7c-be3f-f6bb74548dc5' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"829e8198aa7352b2f4dd33bb0276d315"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":760,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:05Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":760,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.023733,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:05Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"829e8198aa7352b2f4dd33bb0276d315","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377945,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0NX0.ItzUJcvueDrbwPBAtBf0BEeWx8mVGUJ1A8JKHghNn2o"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"829e8198aa7352b2f4dd33bb0276d315","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/0c7d9850-dcf0-44cb-bd4d-d2cab518596f' 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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd7ac1a-be5d-4963-9a34-400c131e0ace","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"fb087ca9-cb3b-447b-bbdf-293181eced55","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377945.872127} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"829e8198aa7352b2f4dd33bb0276d315","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"03d6e08f-e48a-4dd0-95b1-104196e781b8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377945.8784227} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"829e8198aa7352b2f4dd33bb0276d315","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd7ac1a-be5d-4963-9a34-400c131e0ace","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"3c5d80db-0b3e-4185-a81f-649fa0bc53e2","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377945.8884795} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b8531867-79c7-4707-823e-7a4d97588e54","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377945.8886516} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"829e8198aa7352b2f4dd33bb0276d315","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd7ac1a-be5d-4963-9a34-400c131e0ace","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd7ac1a-be5d-4963-9a34-400c131e0ace","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:05.888441189Z"}]},"request_id":"a0d3e454-29e0-4a5f-bec9-94d203bd2b76","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377945.893432} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"829e8198aa7352b2f4dd33bb0276d315","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"829e8198aa7352b2f4dd33bb0276d315"} gateway-1 | {"time_local":"03/Sep/2024:15:39:05 +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":"829e8198aa7352b2f4dd33bb0276d315"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"829e8198aa7352b2f4dd33bb0276d315","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0NX0.ItzUJcvueDrbwPBAtBf0BEeWx8mVGUJ1A8JKHghNn2o","level":"info","message":"auth send jwt","requestID":"273896803f5ed036a6694d14af7d22ed"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"273896803f5ed036a6694d14af7d22ed","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"273896803f5ed036a6694d14af7d22ed"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":761,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:05Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":761,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.872699,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:05Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"273896803f5ed036a6694d14af7d22ed","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377945,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0NX0.ItzUJcvueDrbwPBAtBf0BEeWx8mVGUJ1A8JKHghNn2o"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"273896803f5ed036a6694d14af7d22ed","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb546e922-819b-48ef-885d-74b822c2b02a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"fda2a3f7-5fe7-4690-8366-4dc998c16a8c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377945.9195354} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"273896803f5ed036a6694d14af7d22ed","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a217447c-21c6-4b58-bdb9-3f92d3b08422","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377945.9247112} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"273896803f5ed036a6694d14af7d22ed","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb546e922-819b-48ef-885d-74b822c2b02a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"1f10fddb-e1ca-485f-8dc2-9500718e2cec","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377945.9401662} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"709e01a3-39fc-4c9b-9f0d-7c9d1105d3b6","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377945.9404411} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"273896803f5ed036a6694d14af7d22ed","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb546e922-819b-48ef-885d-74b822c2b02a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb546e922-819b-48ef-885d-74b822c2b02a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:05.940139196Z"}]},"request_id":"0f5ad9fa-7e18-49c8-b847-aa1093c7d3de","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377945.9450593} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"273896803f5ed036a6694d14af7d22ed","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"273896803f5ed036a6694d14af7d22ed"} gateway-1 | {"time_local":"03/Sep/2024:15:39:05 +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":"273896803f5ed036a6694d14af7d22ed"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"273896803f5ed036a6694d14af7d22ed","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0Nn0.3ZV0PoDZIRDZcwYdI42d0uGoRsVDtkEaw3Zar_rPOzc","level":"info","message":"auth send jwt","requestID":"d6d8f4d79dcee4613cd17ad65d76679b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d6d8f4d79dcee4613cd17ad65d76679b","responseTime":4,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0Nn0.3ZV0PoDZIRDZcwYdI42d0uGoRsVDtkEaw3Zar_rPOzc","level":"info","message":"auth send jwt","requestID":"73c592311c39f36e01b1d454b7c3fd12"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"73c592311c39f36e01b1d454b7c3fd12","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"d6d8f4d79dcee4613cd17ad65d76679b"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"73c592311c39f36e01b1d454b7c3fd12"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":762,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:06Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":762,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.656129,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:06Z"} authorization-1 | {"client_addr":"127.0.0.1:45934","level":"info","msg":"Received request.","req_id":763,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:06Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"d6d8f4d79dcee4613cd17ad65d76679b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377946,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0Nn0.3ZV0PoDZIRDZcwYdI42d0uGoRsVDtkEaw3Zar_rPOzc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d6d8f4d79dcee4613cd17ad65d76679b","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45934","level":"info","msg":"Sent response.","req_id":763,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.832768,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:06Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b546e922-819b-48ef-885d-74b822c2b02a","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"73c592311c39f36e01b1d454b7c3fd12","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/b546e922-819b-48ef-885d-74b822c2b02a","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377946,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0Nn0.3ZV0PoDZIRDZcwYdI42d0uGoRsVDtkEaw3Zar_rPOzc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"73c592311c39f36e01b1d454b7c3fd12","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd7ac1a-be5d-4963-9a34-400c131e0ace","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd7ac1a-be5d-4963-9a34-400c131e0ace","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:05.888441189Z"}]},"request_id":"d3e7643b-a7ab-4997-8299-df013b445751","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377946.397891} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d6d8f4d79dcee4613cd17ad65d76679b","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb546e922-819b-48ef-885d-74b822c2b02a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb546e922-819b-48ef-885d-74b822c2b02a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:05.940139196Z"}]},"request_id":"32d46447-e03e-4362-8b43-4ab45c2d24ed","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377946.3989813} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"73c592311c39f36e01b1d454b7c3fd12","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"665d43c2-5946-4f2c-9eef-d51ba493edf2","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377946.4043436} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"d6d8f4d79dcee4613cd17ad65d76679b","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7a161fa8-c366-4734-b59b-4080cfb514bb","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377946.4061863} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"73c592311c39f36e01b1d454b7c3fd12","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb546e922-819b-48ef-885d-74b822c2b02a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb546e922-819b-48ef-885d-74b822c2b02a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:05.940139196Z"}]},"request_id":"4bf63de9-fbf3-4edf-abef-3a0a0d550ee0","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377946.4190633} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"73c592311c39f36e01b1d454b7c3fd12","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd7ac1a-be5d-4963-9a34-400c131e0ace","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd7ac1a-be5d-4963-9a34-400c131e0ace","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:05.888441189Z"}]},"request_id":"e4bdadf0-7520-4929-95eb-95b1226cbf62","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377946.4198122} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"73c592311c39f36e01b1d454b7c3fd12"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d6d8f4d79dcee4613cd17ad65d76679b","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"PATCH /devices/b546e922-819b-48ef-885d-74b822c2b02a 200 33ms","method":"PATCH","requestID":"73c592311c39f36e01b1d454b7c3fd12","responseTime":33,"status":200,"url":"/devices/b546e922-819b-48ef-885d-74b822c2b02a"} gateway-1 | {"time_local":"03/Sep/2024:15:39:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/b546e922-819b-48ef-885d-74b822c2b02a HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.040","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"73c592311c39f36e01b1d454b7c3fd12"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"d6d8f4d79dcee4613cd17ad65d76679b"} device-1 | {"level":"info","message":"PATCH /devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace 200 35ms","method":"PATCH","requestID":"d6d8f4d79dcee4613cd17ad65d76679b","responseTime":35,"status":200,"url":"/devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace"} gateway-1 | {"time_local":"03/Sep/2024:15:39:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.041","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"d6d8f4d79dcee4613cd17ad65d76679b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0Nn0.3ZV0PoDZIRDZcwYdI42d0uGoRsVDtkEaw3Zar_rPOzc","level":"info","message":"auth send jwt","requestID":"f409e30641c66bba0ae5ea4f1276941c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f409e30641c66bba0ae5ea4f1276941c","responseTime":4,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0Nn0.3ZV0PoDZIRDZcwYdI42d0uGoRsVDtkEaw3Zar_rPOzc","level":"info","message":"auth send jwt","requestID":"4feee1ecb1e6ee4f21dc2f4f830b4826"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f409e30641c66bba0ae5ea4f1276941c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4feee1ecb1e6ee4f21dc2f4f830b4826","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"4feee1ecb1e6ee4f21dc2f4f830b4826"} authorization-1 | {"client_addr":"127.0.0.1:45934","level":"info","msg":"Received request.","req_id":764,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:06Z"} authorization-1 | {"client_addr":"127.0.0.1:45934","level":"info","msg":"Sent response.","req_id":764,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.149348,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:06Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":765,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:06Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b546e922-819b-48ef-885d-74b822c2b02a","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"f409e30641c66bba0ae5ea4f1276941c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/b546e922-819b-48ef-885d-74b822c2b02a","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377946,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0Nn0.3ZV0PoDZIRDZcwYdI42d0uGoRsVDtkEaw3Zar_rPOzc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f409e30641c66bba0ae5ea4f1276941c","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":765,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.865449,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:06Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"4feee1ecb1e6ee4f21dc2f4f830b4826","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377946,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0Nn0.3ZV0PoDZIRDZcwYdI42d0uGoRsVDtkEaw3Zar_rPOzc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4feee1ecb1e6ee4f21dc2f4f830b4826","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"4feee1ecb1e6ee4f21dc2f4f830b4826"} gateway-1 | {"time_local":"03/Sep/2024:15:39:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.015","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"4feee1ecb1e6ee4f21dc2f4f830b4826"} device-1 | {"level":"info","message":"POST /devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace/websocket 200 9ms","method":"POST","requestID":"4feee1ecb1e6ee4f21dc2f4f830b4826","responseTime":9,"status":200,"url":"/devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f409e30641c66bba0ae5ea4f1276941c"} gateway-1 | {"time_local":"03/Sep/2024:15:39:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b546e922-819b-48ef-885d-74b822c2b02a/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"f409e30641c66bba0ae5ea4f1276941c"} device-1 | {"level":"info","message":"POST /devices/b546e922-819b-48ef-885d-74b822c2b02a/websocket 200 18ms","method":"POST","requestID":"f409e30641c66bba0ae5ea4f1276941c","responseTime":18,"status":200,"url":"/devices/b546e922-819b-48ef-885d-74b822c2b02a/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b546e922-819b-48ef-885d-74b822c2b02a' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0Nn0.3ZV0PoDZIRDZcwYdI42d0uGoRsVDtkEaw3Zar_rPOzc","level":"info","message":"auth send jwt","requestID":"e9febaa992d9e5e73ede35be104e649f"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"e9febaa992d9e5e73ede35be104e649f","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e9febaa992d9e5e73ede35be104e649f"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":766,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:06Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":766,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.203949,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"e9febaa992d9e5e73ede35be104e649f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377946,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0Nn0.3ZV0PoDZIRDZcwYdI42d0uGoRsVDtkEaw3Zar_rPOzc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e9febaa992d9e5e73ede35be104e649f","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd7ac1a-be5d-4963-9a34-400c131e0ace","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd7ac1a-be5d-4963-9a34-400c131e0ace","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:05.888441189Z"}]},"request_id":"dc89dda0-c8c3-4a3d-93ed-c994df539613","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377946.510624} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e9febaa992d9e5e73ede35be104e649f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e9febaa992d9e5e73ede35be104e649f"} gateway-1 | {"time_local":"03/Sep/2024:15:39:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace? 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":"e9febaa992d9e5e73ede35be104e649f"} device-1 | {"level":"info","message":"GET /devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace? 200 17ms","method":"GET","requestID":"e9febaa992d9e5e73ede35be104e649f","responseTime":17,"status":200,"url":"/devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0Nn0.3ZV0PoDZIRDZcwYdI42d0uGoRsVDtkEaw3Zar_rPOzc","level":"info","message":"auth send jwt","requestID":"01b0a1707eeb675d610fd16151eaae25"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"01b0a1707eeb675d610fd16151eaae25","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"01b0a1707eeb675d610fd16151eaae25"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":767,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:06Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":767,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.285326,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b546e922-819b-48ef-885d-74b822c2b02a","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"01b0a1707eeb675d610fd16151eaae25","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/b546e922-819b-48ef-885d-74b822c2b02a","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377946,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0Nn0.3ZV0PoDZIRDZcwYdI42d0uGoRsVDtkEaw3Zar_rPOzc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"01b0a1707eeb675d610fd16151eaae25","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb546e922-819b-48ef-885d-74b822c2b02a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb546e922-819b-48ef-885d-74b822c2b02a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:05.940139196Z"}]},"request_id":"97b200ba-02ee-48ff-91ee-b5e9759fa4d6","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377946.534338} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"01b0a1707eeb675d610fd16151eaae25","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"01b0a1707eeb675d610fd16151eaae25"} gateway-1 | {"time_local":"03/Sep/2024:15:39:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b546e922-819b-48ef-885d-74b822c2b02a? 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":"01b0a1707eeb675d610fd16151eaae25"} device-1 | {"level":"info","message":"GET /devices/b546e922-819b-48ef-885d-74b822c2b02a? 200 17ms","method":"GET","requestID":"01b0a1707eeb675d610fd16151eaae25","responseTime":17,"status":200,"url":"/devices/b546e922-819b-48ef-885d-74b822c2b02a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0Nn0.3ZV0PoDZIRDZcwYdI42d0uGoRsVDtkEaw3Zar_rPOzc","level":"info","message":"auth send jwt","requestID":"3703f6f0b565c3ff4b1ba0f39b9386b3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3703f6f0b565c3ff4b1ba0f39b9386b3","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"3703f6f0b565c3ff4b1ba0f39b9386b3"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":768,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:06Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":768,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.356931,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"3703f6f0b565c3ff4b1ba0f39b9386b3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377946,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0Nn0.3ZV0PoDZIRDZcwYdI42d0uGoRsVDtkEaw3Zar_rPOzc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3703f6f0b565c3ff4b1ba0f39b9386b3","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94d1a2af-52cf-4811-b499-c8d86f4407a2"},"level":"info","message":"Attempting to run experiment","requestID":"3703f6f0b565c3ff4b1ba0f39b9386b3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94d1a2af-52cf-4811-b499-c8d86f4407a2"},"level":"info","message":"Attempting to book experiment","requestID":"3703f6f0b565c3ff4b1ba0f39b9386b3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94d1a2af-52cf-4811-b499-c8d86f4407a2"},"level":"info","message":"Successfully booked experiment","requestID":"3703f6f0b565c3ff4b1ba0f39b9386b3"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a79a76f0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a79a9e00-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":769,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:06Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":769,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.127167,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:06Z"} authorization-1 | {"client_addr":"127.0.0.1:45934","level":"info","msg":"Received request.","req_id":770,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a79a76f0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377946,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0Nn0.3ZV0PoDZIRDZcwYdI42d0uGoRsVDtkEaw3Zar_rPOzc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a79a76f0-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45934","level":"info","msg":"Sent response.","req_id":770,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.147643,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b546e922-819b-48ef-885d-74b822c2b02a","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a79a9e00-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/b546e922-819b-48ef-885d-74b822c2b02a","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377946,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0Nn0.3ZV0PoDZIRDZcwYdI42d0uGoRsVDtkEaw3Zar_rPOzc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a79a9e00-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd7ac1a-be5d-4963-9a34-400c131e0ace","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd7ac1a-be5d-4963-9a34-400c131e0ace","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:05.888441189Z"}]},"request_id":"26307b3a-0322-4fc9-8083-778aa4d9caa2","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377946.60048} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a79a76f0-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb546e922-819b-48ef-885d-74b822c2b02a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb546e922-819b-48ef-885d-74b822c2b02a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:05.940139196Z"}]},"request_id":"a60af0bc-dfe5-4c3f-b034-70df632bf1cd","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377946.6018844} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a79a9e00-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a79a76f0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace? 200 15ms","method":"GET","requestID":"a79a76f0-6a0a-11ef-9b41-2363e6623fc8","responseTime":15,"status":200,"url":"/devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a79a9e00-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/b546e922-819b-48ef-885d-74b822c2b02a? 200 13ms","method":"GET","requestID":"a79a9e00-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/devices/b546e922-819b-48ef-885d-74b822c2b02a?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94d1a2af-52cf-4811-b499-c8d86f4407a2"},"level":"info","message":"Setting up experiment","requestID":"3703f6f0b565c3ff4b1ba0f39b9386b3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94d1a2af-52cf-4811-b499-c8d86f4407a2"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"3703f6f0b565c3ff4b1ba0f39b9386b3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94d1a2af-52cf-4811-b499-c8d86f4407a2"},"level":"info","message":"Successfully locked booking for experiment","requestID":"3703f6f0b565c3ff4b1ba0f39b9386b3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94d1a2af-52cf-4811-b499-c8d86f4407a2"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"3703f6f0b565c3ff4b1ba0f39b9386b3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94d1a2af-52cf-4811-b499-c8d86f4407a2"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"3703f6f0b565c3ff4b1ba0f39b9386b3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94d1a2af-52cf-4811-b499-c8d86f4407a2"},"level":"info","message":"Attempting to update booking for experiment","requestID":"3703f6f0b565c3ff4b1ba0f39b9386b3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94d1a2af-52cf-4811-b499-c8d86f4407a2"},"level":"info","message":"Successfully updated booking for experiment","requestID":"3703f6f0b565c3ff4b1ba0f39b9386b3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94d1a2af-52cf-4811-b499-c8d86f4407a2"},"level":"info","message":"Successfully set up experiment","requestID":"3703f6f0b565c3ff4b1ba0f39b9386b3"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a7a48910-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a7a4b020-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a7a4d730-6a0a-11ef-9b41-2363e6623fc8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94d1a2af-52cf-4811-b499-c8d86f4407a2"},"level":"info","message":"Successfully running experiment","requestID":"3703f6f0b565c3ff4b1ba0f39b9386b3"} authorization-1 | {"client_addr":"127.0.0.1:45934","level":"info","msg":"Received request.","req_id":771,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:06Z"} authorization-1 | {"client_addr":"127.0.0.1:45934","level":"info","msg":"Sent response.","req_id":771,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.707325,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:06Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":772,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a7a48910-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377946,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0Nn0.3ZV0PoDZIRDZcwYdI42d0uGoRsVDtkEaw3Zar_rPOzc"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"a7a48910-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":772,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.377654,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:06Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":773,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b546e922-819b-48ef-885d-74b822c2b02a","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a7a4b020-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/b546e922-819b-48ef-885d-74b822c2b02a","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377946,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0Nn0.3ZV0PoDZIRDZcwYdI42d0uGoRsVDtkEaw3Zar_rPOzc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a7a4b020-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":773,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.577232,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:06Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd7ac1a-be5d-4963-9a34-400c131e0ace","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e5480b7f-fe92-4e23-bed0-0d78e5e4cdaf","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377946.6667109} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a7a4d730-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"a7a4d730-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a7a4d730-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb546e922-819b-48ef-885d-74b822c2b02a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb546e922-819b-48ef-885d-74b822c2b02a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:05.940139196Z"}]},"request_id":"09a28f30-36c2-495d-8e3c-a556cc1b91f3","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377946.6714177} device-1 | {"level":"info","message":"POST /devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace/signaling 200 13ms","method":"POST","requestID":"a7a4d730-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a7a4b020-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd7ac1a-be5d-4963-9a34-400c131e0ace","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd7ac1a-be5d-4963-9a34-400c131e0ace","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:05.888441189Z"}]},"request_id":"cf840012-6b5d-438d-9d2a-ff2c6b3695a3","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377946.67253} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a7a48910-6a0a-11ef-9b41-2363e6623fc8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a7a74830-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":774,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:06Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a7a4b020-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/b546e922-819b-48ef-885d-74b822c2b02a? 200 20ms","method":"GET","requestID":"a7a4b020-6a0a-11ef-9b41-2363e6623fc8","responseTime":20,"status":200,"url":"/devices/b546e922-819b-48ef-885d-74b822c2b02a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a7a48910-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace? 200 22ms","method":"GET","requestID":"a7a48910-6a0a-11ef-9b41-2363e6623fc8","responseTime":22,"status":200,"url":"/devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace?"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb546e922-819b-48ef-885d-74b822c2b02a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"909e68fd-5479-4575-ade8-25dfabec0ec3","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377946.679602} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":774,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.072962,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b546e922-819b-48ef-885d-74b822c2b02a","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a7a74830-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b546e922-819b-48ef-885d-74b822c2b02a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a7a74830-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a7a83290-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F94d1a2af-52cf-4811-b499-c8d86f4407a2#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F94d1a2af-52cf-4811-b499-c8d86f4407a2","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"5fa17661-d52f-4a58-8647-a079c38ba180","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377946.68371} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3dc8a54e-4dd1-4ded-b433-9c6b48e06453","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377946.6840756} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a7a74830-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/b546e922-819b-48ef-885d-74b822c2b02a/signaling 200 10ms","method":"POST","requestID":"a7a74830-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/devices/b546e922-819b-48ef-885d-74b822c2b02a/signaling"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":775,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:06Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"3703f6f0b565c3ff4b1ba0f39b9386b3","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd7ac1a-be5d-4963-9a34-400c131e0ace","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c14e1eaa-7732-4489-bd46-6e81c7e8afe5","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377946.6862366} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":775,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.617704,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a7a83290-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a7a83290-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a7a83290-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace/signaling 200 10ms","method":"POST","requestID":"a7a83290-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/94d1a2af-52cf-4811-b499-c8d86f4407a2","user":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"3703f6f0b565c3ff4b1ba0f39b9386b3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a7aa2e60-6a0a-11ef-9b41-2363e6623fc8"} gateway-1 | {"time_local":"03/Sep/2024:15:39:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1219","request_time":"0.153","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3703f6f0b565c3ff4b1ba0f39b9386b3"} experiment-1 | {"level":"info","message":"POST /experiments? 201 147ms","method":"POST","requestID":"3703f6f0b565c3ff4b1ba0f39b9386b3","responseTime":147,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":776,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:06Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb546e922-819b-48ef-885d-74b822c2b02a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b035f5d1-1718-420d-b306-a73859c2f57b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377946.6992896} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0Nn0.3ZV0PoDZIRDZcwYdI42d0uGoRsVDtkEaw3Zar_rPOzc","level":"info","message":"auth send jwt","requestID":"572998531152a5dbe07fca2569c68819"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":776,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.266359,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:06Z"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"572998531152a5dbe07fca2569c68819","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b546e922-819b-48ef-885d-74b822c2b02a","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a7aa2e60-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b546e922-819b-48ef-885d-74b822c2b02a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"572998531152a5dbe07fca2569c68819"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a7aa2e60-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":777,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:06Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":777,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.504785,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:06Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a7aa2e60-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/b546e922-819b-48ef-885d-74b822c2b02a/signaling 200 10ms","method":"POST","requestID":"a7aa2e60-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/devices/b546e922-819b-48ef-885d-74b822c2b02a/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"572998531152a5dbe07fca2569c68819","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377946,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0Nn0.3ZV0PoDZIRDZcwYdI42d0uGoRsVDtkEaw3Zar_rPOzc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"572998531152a5dbe07fca2569c68819","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94d1a2af-52cf-4811-b499-c8d86f4407a2"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"3703f6f0b565c3ff4b1ba0f39b9386b3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94d1a2af-52cf-4811-b499-c8d86f4407a2"},"level":"info","message":"Building connection plan","requestID":"3703f6f0b565c3ff4b1ba0f39b9386b3"} 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":"17811377-3df5-4d24-9231-5356ca1ee296"},{"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":"f3591e97-c459-4bdc-91ad-6fd55fae688c"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"aae082d7-a5a4-463a-8518-85871b7b7217"}]},"level":"info","message":"Built pairwise service configurations","requestID":"3703f6f0b565c3ff4b1ba0f39b9386b3"} 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/cbd7ac1a-be5d-4963-9a34-400c131e0ace"},{"config":{"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/b546e922-819b-48ef-885d-74b822c2b02a"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"3703f6f0b565c3ff4b1ba0f39b9386b3"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"a7ac0320-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd7ac1a-be5d-4963-9a34-400c131e0ace","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd7ac1a-be5d-4963-9a34-400c131e0ace","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:05.888441189Z"}]},"request_id":"4d59fbab-3d42-4c00-9fbb-a57ae4bba6ba","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377946.7078848} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"572998531152a5dbe07fca2569c68819","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":778,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:06Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":778,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.654545,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a7ac0320-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377946,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0Nn0.3ZV0PoDZIRDZcwYdI42d0uGoRsVDtkEaw3Zar_rPOzc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a7ac0320-6a0a-11ef-9b41-2363e6623fc8","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"572998531152a5dbe07fca2569c68819"} device-1 | {"level":"info","message":"GET /devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace? 200 13ms","method":"GET","requestID":"572998531152a5dbe07fca2569c68819","responseTime":13,"status":200,"url":"/devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace?"} gateway-1 | {"time_local":"03/Sep/2024:15:39:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace? 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":"572998531152a5dbe07fca2569c68819"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0Nn0.3ZV0PoDZIRDZcwYdI42d0uGoRsVDtkEaw3Zar_rPOzc","level":"info","message":"auth send jwt","requestID":"80adba013fcbe37be5fed54f67941597"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"80adba013fcbe37be5fed54f67941597","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","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%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"3d179048-588c-49ca-8afe-482ae8e68055","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377946.7181883} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"80adba013fcbe37be5fed54f67941597"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b40ed8f5-efb6-4bda-9086-55c175f300e1","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377946.7183223} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"a7ac0320-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":779,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:06Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":779,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.940505,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b546e922-819b-48ef-885d-74b822c2b02a","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"80adba013fcbe37be5fed54f67941597","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/b546e922-819b-48ef-885d-74b822c2b02a","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377946,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0Nn0.3ZV0PoDZIRDZcwYdI42d0uGoRsVDtkEaw3Zar_rPOzc"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"80adba013fcbe37be5fed54f67941597","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb546e922-819b-48ef-885d-74b822c2b02a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb546e922-819b-48ef-885d-74b822c2b02a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:05.940139196Z"}]},"request_id":"3bedc255-10e3-4ca8-a719-dcf775b443c8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377946.725925} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"80adba013fcbe37be5fed54f67941597","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"a7ac0320-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"a7ac0320-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/7c1fa227-7400-4301-b7ec-fd5e7dfc1a7b'","requestID":"a7ac0320-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/7c1fa227-7400-4301-b7ec-fd5e7dfc1a7b'","requestID":"a7ac0320-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"a7ac0320-6a0a-11ef-9b41-2363e6623fc8"} 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":"a7ac0320-6a0a-11ef-9b41-2363e6623fc8","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":"80adba013fcbe37be5fed54f67941597"} gateway-1 | {"time_local":"03/Sep/2024:15:39:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b546e922-819b-48ef-885d-74b822c2b02a? 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":"80adba013fcbe37be5fed54f67941597"} device-1 | {"level":"info","message":"GET /devices/b546e922-819b-48ef-885d-74b822c2b02a? 200 15ms","method":"GET","requestID":"80adba013fcbe37be5fed54f67941597","responseTime":15,"status":200,"url":"/devices/b546e922-819b-48ef-885d-74b822c2b02a?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"a7ac0320-6a0a-11ef-9b41-2363e6623fc8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94d1a2af-52cf-4811-b499-c8d86f4407a2"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"3703f6f0b565c3ff4b1ba0f39b9386b3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a7b41970-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":780,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:06Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd7ac1a-be5d-4963-9a34-400c131e0ace","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"60c26140-7dea-4f96-9b7a-4219c427f991","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377946.763373} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":780,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.765499,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a7b41970-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a7b41970-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a7b41970-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace/signaling 200 8ms","method":"POST","requestID":"a7b41970-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a7b5c720-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":781,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:06Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb546e922-819b-48ef-885d-74b822c2b02a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0b81ea64-c77b-478a-862e-956017e52857","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377946.7743397} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":781,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.601183,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b546e922-819b-48ef-885d-74b822c2b02a","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a7b5c720-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b546e922-819b-48ef-885d-74b822c2b02a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a7b5c720-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a7b5c720-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/b546e922-819b-48ef-885d-74b822c2b02a/signaling 200 8ms","method":"POST","requestID":"a7b5c720-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/devices/b546e922-819b-48ef-885d-74b822c2b02a/signaling"} device-1 | {"device":"b546e922-819b-48ef-885d-74b822c2b02a","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":"7c1fa227-7400-4301-b7ec-fd5e7dfc1a7b","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"cbd7ac1a-be5d-4963-9a34-400c131e0ace","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":"7c1fa227-7400-4301-b7ec-fd5e7dfc1a7b","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"cbd7ac1a-be5d-4963-9a34-400c131e0ace","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":"cbd7ac1a-be5d-4963-9a34-400c131e0ace","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":"cbd7ac1a-be5d-4963-9a34-400c131e0ace","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":"cbd7ac1a-be5d-4963-9a34-400c131e0ace","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/7c1fa227-7400-4301-b7ec-fd5e7dfc1a7b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"7c1fa227-7400-4301-b7ec-fd5e7dfc1a7b","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f4d93f60711c94632a52b91c7fda0eb1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f4d93f60711c94632a52b91c7fda0eb1","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/cbd7ac1a-be5d-4963-9a34-400c131e0ace"},{"config":{"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/b546e922-819b-48ef-885d-74b822c2b02a"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/7c1fa227-7400-4301-b7ec-fd5e7dfc1a7b"}}},"level":"info","message":"received a callback","requestID":"f4d93f60711c94632a52b91c7fda0eb1"} device-1 | {"device":"b546e922-819b-48ef-885d-74b822c2b02a","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":"b546e922-819b-48ef-885d-74b822c2b02a","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":"b546e922-819b-48ef-885d-74b822c2b02a","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 5ms","method":"POST","requestID":"f4d93f60711c94632a52b91c7fda0eb1","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:39:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"f4d93f60711c94632a52b91c7fda0eb1"} device-1 | {"data":{"peerconnection":"7c1fa227-7400-4301-b7ec-fd5e7dfc1a7b","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"cbd7ac1a-be5d-4963-9a34-400c131e0ace","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":"b546e922-819b-48ef-885d-74b822c2b02a","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":"cbd7ac1a-be5d-4963-9a34-400c131e0ace","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":"b546e922-819b-48ef-885d-74b822c2b02a","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":"7c1fa227-7400-4301-b7ec-fd5e7dfc1a7b","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/7c1fa227-7400-4301-b7ec-fd5e7dfc1a7b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"7c1fa227-7400-4301-b7ec-fd5e7dfc1a7b","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c43ad1507beee9cb6b76ef15e5c1d64c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c43ad1507beee9cb6b76ef15e5c1d64c","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/cbd7ac1a-be5d-4963-9a34-400c131e0ace"},{"config":{"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/b546e922-819b-48ef-885d-74b822c2b02a"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/7c1fa227-7400-4301-b7ec-fd5e7dfc1a7b"}}},"level":"info","message":"received a callback","requestID":"c43ad1507beee9cb6b76ef15e5c1d64c"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"a8f265d0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":782,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:08Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F7c1fa227-7400-4301-b7ec-fd5e7dfc1a7b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cd19a1b0-f68c-4133-8735-64a5d51b6544","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377948.8497784} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":782,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.837044,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/7c1fa227-7400-4301-b7ec-fd5e7dfc1a7b","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a8f265d0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/7c1fa227-7400-4301-b7ec-fd5e7dfc1a7b","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":"a8f265d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"a8f265d0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /peerconnections/7c1fa227-7400-4301-b7ec-fd5e7dfc1a7b 200 10ms","method":"GET","requestID":"a8f265d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/peerconnections/7c1fa227-7400-4301-b7ec-fd5e7dfc1a7b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 39ms","method":"POST","requestID":"c43ad1507beee9cb6b76ef15e5c1d64c","responseTime":39,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:39:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.043","http_referrer":"","http_user_agent":"node-fetch","requestID":"c43ad1507beee9cb6b76ef15e5c1d64c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a8f76ee0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":783,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:08Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd7ac1a-be5d-4963-9a34-400c131e0ace","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"94769b2f-36a5-4fb9-8bb5-6fe69806fc02","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377948.8841813} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":783,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.571879,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a8f76ee0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"a8f76ee0-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a8f76ee0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace/signaling 200 13ms","method":"POST","requestID":"a8f76ee0-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a8f9b8d0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":784,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:08Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb546e922-819b-48ef-885d-74b822c2b02a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f0686f77-4dd6-4392-a699-e76ebf0cd14a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377948.8996549} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":784,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.211117,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b546e922-819b-48ef-885d-74b822c2b02a","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a8f9b8d0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b546e922-819b-48ef-885d-74b822c2b02a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a8f9b8d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a8f9b8d0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/b546e922-819b-48ef-885d-74b822c2b02a/signaling 200 12ms","method":"POST","requestID":"a8f9b8d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":12,"status":200,"url":"/devices/b546e922-819b-48ef-885d-74b822c2b02a/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0OH0.ZjHsr9xGMD4V6AKe1jOjrix1cs7hsfo_7uXcNQBgRpc","level":"info","message":"auth send jwt","requestID":"0ddb6d3cb76f95333cf314d775d4233e"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"0ddb6d3cb76f95333cf314d775d4233e","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/94d1a2af-52cf-4811-b499-c8d86f4407a2","requestID":"0ddb6d3cb76f95333cf314d775d4233e"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":785,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:08Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":785,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.286372,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/94d1a2af-52cf-4811-b499-c8d86f4407a2","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"0ddb6d3cb76f95333cf314d775d4233e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/94d1a2af-52cf-4811-b499-c8d86f4407a2","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377948,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0OH0.ZjHsr9xGMD4V6AKe1jOjrix1cs7hsfo_7uXcNQBgRpc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0ddb6d3cb76f95333cf314d775d4233e","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/94d1a2af-52cf-4811-b499-c8d86f4407a2","requestID":"0ddb6d3cb76f95333cf314d775d4233e"} gateway-1 | {"time_local":"03/Sep/2024:15:39:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/94d1a2af-52cf-4811-b499-c8d86f4407a2 HTTP/1.1","status": "200","body_bytes_sent":"1292","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0ddb6d3cb76f95333cf314d775d4233e"} experiment-1 | {"level":"info","message":"GET /experiments/94d1a2af-52cf-4811-b499-c8d86f4407a2 200 14ms","method":"GET","requestID":"0ddb6d3cb76f95333cf314d775d4233e","responseTime":14,"status":200,"url":"/experiments/94d1a2af-52cf-4811-b499-c8d86f4407a2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0OH0.ZjHsr9xGMD4V6AKe1jOjrix1cs7hsfo_7uXcNQBgRpc","level":"info","message":"auth send jwt","requestID":"714c0608c942dd8f1cc5dad5a0b7ffe6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"714c0608c942dd8f1cc5dad5a0b7ffe6","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/94d1a2af-52cf-4811-b499-c8d86f4407a2","requestID":"714c0608c942dd8f1cc5dad5a0b7ffe6"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":786,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:08Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":786,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.294399,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:08Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/94d1a2af-52cf-4811-b499-c8d86f4407a2","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"714c0608c942dd8f1cc5dad5a0b7ffe6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/94d1a2af-52cf-4811-b499-c8d86f4407a2","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377948,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0OH0.ZjHsr9xGMD4V6AKe1jOjrix1cs7hsfo_7uXcNQBgRpc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"714c0608c942dd8f1cc5dad5a0b7ffe6","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94d1a2af-52cf-4811-b499-c8d86f4407a2"},"level":"info","message":"Attempting to finish experiment","requestID":"714c0608c942dd8f1cc5dad5a0b7ffe6"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"a9063bf0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":787,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:08Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":787,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.198533,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:08Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/7c1fa227-7400-4301-b7ec-fd5e7dfc1a7b","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a9063bf0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:http://localhost/peerconnections/7c1fa227-7400-4301-b7ec-fd5e7dfc1a7b","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377948,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0OH0.ZjHsr9xGMD4V6AKe1jOjrix1cs7hsfo_7uXcNQBgRpc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a9063bf0-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"device":"b546e922-819b-48ef-885d-74b822c2b02a","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":"b546e922-819b-48ef-885d-74b822c2b02a","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":"b546e922-819b-48ef-885d-74b822c2b02a","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":"cbd7ac1a-be5d-4963-9a34-400c131e0ace","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":"cbd7ac1a-be5d-4963-9a34-400c131e0ace","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":"cbd7ac1a-be5d-4963-9a34-400c131e0ace","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/7c1fa227-7400-4301-b7ec-fd5e7dfc1a7b' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/7c1fa227-7400-4301-b7ec-fd5e7dfc1a7b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"7c1fa227-7400-4301-b7ec-fd5e7dfc1a7b","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F7c1fa227-7400-4301-b7ec-fd5e7dfc1a7b': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F7c1fa227-7400-4301-b7ec-fd5e7dfc1a7b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"53e8b9bf-215c-4468-9dad-d2d24de4362c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377948.99909} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"44bdba00b6d2fa383170443ffa57851a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f107ad48-19ac-46a9-965a-3dd13f3b52a8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377948.9994593} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"44bdba00b6d2fa383170443ffa57851a","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":"connected","url":"http://localhost/devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace"},{"config":{"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/b546e922-819b-48ef-885d-74b822c2b02a"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/7c1fa227-7400-4301-b7ec-fd5e7dfc1a7b"}}},"level":"info","message":"received a callback","requestID":"44bdba00b6d2fa383170443ffa57851a"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4f88ad38ff23c2c396ca735b235402de","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"a9063bf0-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4f88ad38ff23c2c396ca735b235402de","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":"connected","url":"http://localhost/devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace"},{"config":{"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/b546e922-819b-48ef-885d-74b822c2b02a"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/7c1fa227-7400-4301-b7ec-fd5e7dfc1a7b"}}},"level":"info","message":"received a callback","requestID":"4f88ad38ff23c2c396ca735b235402de"} device-1 | {"data":{"peerconnection":"7c1fa227-7400-4301-b7ec-fd5e7dfc1a7b","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"a9063bf0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"DELETE /peerconnections/7c1fa227-7400-4301-b7ec-fd5e7dfc1a7b 204 46ms","method":"DELETE","requestID":"a9063bf0-6a0a-11ef-9b41-2363e6623fc8","responseTime":46,"status":204,"url":"/peerconnections/7c1fa227-7400-4301-b7ec-fd5e7dfc1a7b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94d1a2af-52cf-4811-b499-c8d86f4407a2"},"level":"info","message":"Successfully finished experiment","requestID":"714c0608c942dd8f1cc5dad5a0b7ffe6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a910c340-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":788,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:09Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd7ac1a-be5d-4963-9a34-400c131e0ace","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5536bf20-81ec-4efa-9926-03ce7a7d09b3","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377949.0522172} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":788,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.097394,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a910c340-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace","object_type":"device","rebac_allow":false,"scope_allow":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":"a910c340-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F94d1a2af-52cf-4811-b499-c8d86f4407a2': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F94d1a2af-52cf-4811-b499-c8d86f4407a2","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"10ccf7d6-786f-4161-b101-098fbccee90f","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377949.0585434} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a910c340-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace/signaling 200 16ms","method":"POST","requestID":"a910c340-6a0a-11ef-9b41-2363e6623fc8","responseTime":16,"status":200,"url":"/devices/cbd7ac1a-be5d-4963-9a34-400c131e0ace/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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"766b5149-c0ed-406a-acdf-ab487f0d8ded","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377949.0593143} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"714c0608c942dd8f1cc5dad5a0b7ffe6","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a913a970-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":789,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:09Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb546e922-819b-48ef-885d-74b822c2b02a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0da059f2-b5c3-43c8-afe7-232f54b86afe","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377949.070217} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":789,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.046427,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b546e922-819b-48ef-885d-74b822c2b02a","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a913a970-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b546e922-819b-48ef-885d-74b822c2b02a","object_type":"device","rebac_allow":false,"scope_allow":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":"a913a970-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a913a970-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/b546e922-819b-48ef-885d-74b822c2b02a/signaling 200 14ms","method":"POST","requestID":"a913a970-6a0a-11ef-9b41-2363e6623fc8","responseTime":14,"status":200,"url":"/devices/b546e922-819b-48ef-885d-74b822c2b02a/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/94d1a2af-52cf-4811-b499-c8d86f4407a2","requestID":"714c0608c942dd8f1cc5dad5a0b7ffe6"} gateway-1 | {"time_local":"03/Sep/2024:15:39:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/94d1a2af-52cf-4811-b499-c8d86f4407a2 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.171","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"714c0608c942dd8f1cc5dad5a0b7ffe6"} experiment-1 | {"level":"info","message":"DELETE /experiments/94d1a2af-52cf-4811-b499-c8d86f4407a2 204 167ms","method":"DELETE","requestID":"714c0608c942dd8f1cc5dad5a0b7ffe6","responseTime":167,"status":204,"url":"/experiments/94d1a2af-52cf-4811-b499-c8d86f4407a2"} gateway-1 | {"time_local":"03/Sep/2024:15:39:09 +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.686","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"d0286b8c1c46d44c671bef6c1b1065f9"} gateway-1 | {"time_local":"03/Sep/2024:15:39:09 +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.679","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"80d0e6d8562eb9f97a1e990c7f38d9b7"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 127ms","method":"POST","requestID":"44bdba00b6d2fa383170443ffa57851a","responseTime":127,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:39: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.132","http_referrer":"","http_user_agent":"node-fetch","requestID":"44bdba00b6d2fa383170443ffa57851a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 126ms","method":"POST","requestID":"4f88ad38ff23c2c396ca735b235402de","responseTime":126,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:39:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.133","http_referrer":"","http_user_agent":"node-fetch","requestID":"4f88ad38ff23c2c396ca735b235402de"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0OX0.4eSM3LlOZvfM41IYWkOZv7Nqr-wdN7godYxkjOwHkjI","level":"info","message":"auth send jwt","requestID":"321ba38b69b98ea813986085f4116b69"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"321ba38b69b98ea813986085f4116b69","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/b546e922-819b-48ef-885d-74b822c2b02a' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"321ba38b69b98ea813986085f4116b69"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":790,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:09Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":790,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.137663,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"321ba38b69b98ea813986085f4116b69","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377949,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0OX0.4eSM3LlOZvfM41IYWkOZv7Nqr-wdN7godYxkjOwHkjI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"321ba38b69b98ea813986085f4116b69","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/cbd7ac1a-be5d-4963-9a34-400c131e0ace' 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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08230f7d-e341-48e1-a2fc-07c256a296bb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"35d19ce8-0278-4f6d-976c-f420304c3bc1","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377949.1616266} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"321ba38b69b98ea813986085f4116b69","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"362a02dd-3716-4132-a0d5-ddb9f9d9e433","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377949.1677303} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"321ba38b69b98ea813986085f4116b69","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08230f7d-e341-48e1-a2fc-07c256a296bb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"caf8b1cc-0310-4096-b448-58bc465917b9","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377949.1794198} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ddda092c-df96-4ea1-980e-62cf0f16db81","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377949.1797786} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"321ba38b69b98ea813986085f4116b69","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08230f7d-e341-48e1-a2fc-07c256a296bb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08230f7d-e341-48e1-a2fc-07c256a296bb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:09.179388883Z"}]},"request_id":"c6c36136-649c-4ae6-a597-c13267372fe1","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377949.1846526} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"321ba38b69b98ea813986085f4116b69","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"321ba38b69b98ea813986085f4116b69"} gateway-1 | {"time_local":"03/Sep/2024:15:39: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.059","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"321ba38b69b98ea813986085f4116b69"} device-1 | {"level":"info","message":"POST /devices? 201 51ms","method":"POST","requestID":"321ba38b69b98ea813986085f4116b69","responseTime":51,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0OX0.4eSM3LlOZvfM41IYWkOZv7Nqr-wdN7godYxkjOwHkjI","level":"info","message":"auth send jwt","requestID":"41584ca829e7f715579bf71df36ae189"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"41584ca829e7f715579bf71df36ae189","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"41584ca829e7f715579bf71df36ae189"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":791,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:09Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":791,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.841365,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"41584ca829e7f715579bf71df36ae189","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377949,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk0OX0.4eSM3LlOZvfM41IYWkOZv7Nqr-wdN7godYxkjOwHkjI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"41584ca829e7f715579bf71df36ae189","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"b1cf4007-5cc7-4802-b9a6-4251b44d9fd5","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377949.2108727} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"41584ca829e7f715579bf71df36ae189","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:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3d6aadc9-b5ac-495c-b7ff-320614973162","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377949.2157292} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"41584ca829e7f715579bf71df36ae189","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"acf7e4a6-20a2-495f-a9c7-a088d5ea2264","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377949.2314763} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"01810633-e0e7-46a6-acbb-9803b4f99e9f","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377949.2315793} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"41584ca829e7f715579bf71df36ae189","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:09.231451732Z"}]},"request_id":"20d2f441-41ff-4578-9c7b-166d2f0847bb","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377949.2354813} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"41584ca829e7f715579bf71df36ae189","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"41584ca829e7f715579bf71df36ae189"} gateway-1 | {"time_local":"03/Sep/2024:15:39: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.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"41584ca829e7f715579bf71df36ae189"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"41584ca829e7f715579bf71df36ae189","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2d82ff02fad84579598eeda712d7b069","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"2d82ff02fad84579598eeda712d7b069","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"03/Sep/2024:15:39:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27/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":"2d82ff02fad84579598eeda712d7b069"} device-1 | {"level":"info","message":"OPTIONS /devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27/websocket 200 1ms","method":"OPTIONS","requestID":"2d82ff02fad84579598eeda712d7b069","responseTime":1,"status":200,"url":"/devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1MX0.yp4rE2FX9snE-zsvDkeci6JsgWw-IRqoD6Xbf75EokM","level":"info","message":"auth send jwt","requestID":"2cbb0f2a41165bca54e7f1f5314bba4b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2cbb0f2a41165bca54e7f1f5314bba4b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"2cbb0f2a41165bca54e7f1f5314bba4b"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e73cd484abf402faaa3dae53c0c648ae","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e73cd484abf402faaa3dae53c0c648ae","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"03/Sep/2024:15:39:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/08230f7d-e341-48e1-a2fc-07c256a296bb/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":"e73cd484abf402faaa3dae53c0c648ae"} device-1 | {"level":"info","message":"OPTIONS /devices/08230f7d-e341-48e1-a2fc-07c256a296bb/websocket 200 1ms","method":"OPTIONS","requestID":"e73cd484abf402faaa3dae53c0c648ae","responseTime":1,"status":200,"url":"/devices/08230f7d-e341-48e1-a2fc-07c256a296bb/websocket"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":792,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":792,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.839829,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"2cbb0f2a41165bca54e7f1f5314bba4b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377951,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1MX0.yp4rE2FX9snE-zsvDkeci6JsgWw-IRqoD6Xbf75EokM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2cbb0f2a41165bca54e7f1f5314bba4b","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1MX0.yp4rE2FX9snE-zsvDkeci6JsgWw-IRqoD6Xbf75EokM","level":"info","message":"auth send jwt","requestID":"8128320cd5ff862baae9d89692ad64de"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"8128320cd5ff862baae9d89692ad64de","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"8128320cd5ff862baae9d89692ad64de"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":793,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":793,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.778361,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/08230f7d-e341-48e1-a2fc-07c256a296bb","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8128320cd5ff862baae9d89692ad64de","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/08230f7d-e341-48e1-a2fc-07c256a296bb","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377951,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1MX0.yp4rE2FX9snE-zsvDkeci6JsgWw-IRqoD6Xbf75EokM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8128320cd5ff862baae9d89692ad64de","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"2cbb0f2a41165bca54e7f1f5314bba4b"} gateway-1 | {"time_local":"03/Sep/2024:15:39:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"2cbb0f2a41165bca54e7f1f5314bba4b"} device-1 | {"level":"info","message":"POST /devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27/websocket 200 20ms","method":"POST","requestID":"2cbb0f2a41165bca54e7f1f5314bba4b","responseTime":20,"status":200,"url":"/devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"8128320cd5ff862baae9d89692ad64de"} device-1 | {"level":"info","message":"POST /devices/08230f7d-e341-48e1-a2fc-07c256a296bb/websocket 200 25ms","method":"POST","requestID":"8128320cd5ff862baae9d89692ad64de","responseTime":25,"status":200,"url":"/devices/08230f7d-e341-48e1-a2fc-07c256a296bb/websocket"} gateway-1 | {"time_local":"03/Sep/2024:15:39:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/08230f7d-e341-48e1-a2fc-07c256a296bb/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":"8128320cd5ff862baae9d89692ad64de"} device-1 | {"level":"info","message":"device 'http://localhost/devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/08230f7d-e341-48e1-a2fc-07c256a296bb' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1MX0.yp4rE2FX9snE-zsvDkeci6JsgWw-IRqoD6Xbf75EokM","level":"info","message":"auth send jwt","requestID":"a720bdd729d38555cd0858149639a812"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a720bdd729d38555cd0858149639a812","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a720bdd729d38555cd0858149639a812"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":794,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":794,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.122263,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/08230f7d-e341-48e1-a2fc-07c256a296bb","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"a720bdd729d38555cd0858149639a812","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/08230f7d-e341-48e1-a2fc-07c256a296bb","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377951,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1MX0.yp4rE2FX9snE-zsvDkeci6JsgWw-IRqoD6Xbf75EokM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a720bdd729d38555cd0858149639a812","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08230f7d-e341-48e1-a2fc-07c256a296bb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08230f7d-e341-48e1-a2fc-07c256a296bb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:09.179388883Z"}]},"request_id":"163de730-ba61-4caa-8570-e97c70b9dd9d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377951.267498} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a720bdd729d38555cd0858149639a812","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a720bdd729d38555cd0858149639a812"} device-1 | {"level":"info","message":"GET /devices/08230f7d-e341-48e1-a2fc-07c256a296bb? 200 15ms","method":"GET","requestID":"a720bdd729d38555cd0858149639a812","responseTime":15,"status":200,"url":"/devices/08230f7d-e341-48e1-a2fc-07c256a296bb?"} gateway-1 | {"time_local":"03/Sep/2024:15:39:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/08230f7d-e341-48e1-a2fc-07c256a296bb? 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":"a720bdd729d38555cd0858149639a812"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1MX0.yp4rE2FX9snE-zsvDkeci6JsgWw-IRqoD6Xbf75EokM","level":"info","message":"auth send jwt","requestID":"d68ee9c173bdf7f31673b392fd9a504b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d68ee9c173bdf7f31673b392fd9a504b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d68ee9c173bdf7f31673b392fd9a504b"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":795,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":795,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.768194,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"d68ee9c173bdf7f31673b392fd9a504b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377951,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1MX0.yp4rE2FX9snE-zsvDkeci6JsgWw-IRqoD6Xbf75EokM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d68ee9c173bdf7f31673b392fd9a504b","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:09.231451732Z"}]},"request_id":"0f8ebd38-3458-4557-9e63-48d953c8639b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377951.2872684} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d68ee9c173bdf7f31673b392fd9a504b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d68ee9c173bdf7f31673b392fd9a504b"} device-1 | {"level":"info","message":"GET /devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27? 200 13ms","method":"GET","requestID":"d68ee9c173bdf7f31673b392fd9a504b","responseTime":13,"status":200,"url":"/devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27?"} gateway-1 | {"time_local":"03/Sep/2024:15:39:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27? 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":"d68ee9c173bdf7f31673b392fd9a504b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1MX0.yp4rE2FX9snE-zsvDkeci6JsgWw-IRqoD6Xbf75EokM","level":"info","message":"auth send jwt","requestID":"dbe91b3d9289284f18f2baba9877bca4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"dbe91b3d9289284f18f2baba9877bca4","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"dbe91b3d9289284f18f2baba9877bca4"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":796,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":796,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.929727,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"dbe91b3d9289284f18f2baba9877bca4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377951,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1MX0.yp4rE2FX9snE-zsvDkeci6JsgWw-IRqoD6Xbf75EokM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"dbe91b3d9289284f18f2baba9877bca4","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5f1fbba5-457f-42ea-bb23-53d0ea406bb0"},"level":"info","message":"Attempting to run experiment","requestID":"dbe91b3d9289284f18f2baba9877bca4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5f1fbba5-457f-42ea-bb23-53d0ea406bb0"},"level":"info","message":"Attempting to book experiment","requestID":"dbe91b3d9289284f18f2baba9877bca4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5f1fbba5-457f-42ea-bb23-53d0ea406bb0"},"level":"info","message":"Successfully booked experiment","requestID":"dbe91b3d9289284f18f2baba9877bca4"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"aa6e3060-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"aa6e7e80-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":797,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":797,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.595972,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":798,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/08230f7d-e341-48e1-a2fc-07c256a296bb","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"aa6e3060-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/08230f7d-e341-48e1-a2fc-07c256a296bb","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377951,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1MX0.yp4rE2FX9snE-zsvDkeci6JsgWw-IRqoD6Xbf75EokM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"aa6e3060-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":798,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.917908,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"aa6e7e80-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377951,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1MX0.yp4rE2FX9snE-zsvDkeci6JsgWw-IRqoD6Xbf75EokM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"aa6e7e80-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08230f7d-e341-48e1-a2fc-07c256a296bb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08230f7d-e341-48e1-a2fc-07c256a296bb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:09.179388883Z"}]},"request_id":"7347f3dc-daaf-46d5-956d-3b4521b5ae1d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377951.3445148} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"aa6e3060-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:09.231451732Z"}]},"request_id":"1f548dd1-b6ee-4840-801d-6423eebc65ff","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377951.345512} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"aa6e7e80-6a0a-11ef-9b41-2363e6623fc8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"aa6e3060-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/08230f7d-e341-48e1-a2fc-07c256a296bb? 200 17ms","method":"GET","requestID":"aa6e3060-6a0a-11ef-9b41-2363e6623fc8","responseTime":17,"status":200,"url":"/devices/08230f7d-e341-48e1-a2fc-07c256a296bb?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"aa6e7e80-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27? 200 16ms","method":"GET","requestID":"aa6e7e80-6a0a-11ef-9b41-2363e6623fc8","responseTime":16,"status":200,"url":"/devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5f1fbba5-457f-42ea-bb23-53d0ea406bb0"},"level":"info","message":"Setting up experiment","requestID":"dbe91b3d9289284f18f2baba9877bca4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5f1fbba5-457f-42ea-bb23-53d0ea406bb0"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"dbe91b3d9289284f18f2baba9877bca4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5f1fbba5-457f-42ea-bb23-53d0ea406bb0"},"level":"info","message":"Successfully locked booking for experiment","requestID":"dbe91b3d9289284f18f2baba9877bca4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5f1fbba5-457f-42ea-bb23-53d0ea406bb0"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"dbe91b3d9289284f18f2baba9877bca4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5f1fbba5-457f-42ea-bb23-53d0ea406bb0"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"dbe91b3d9289284f18f2baba9877bca4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5f1fbba5-457f-42ea-bb23-53d0ea406bb0"},"level":"info","message":"Attempting to update booking for experiment","requestID":"dbe91b3d9289284f18f2baba9877bca4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5f1fbba5-457f-42ea-bb23-53d0ea406bb0"},"level":"info","message":"Successfully updated booking for experiment","requestID":"dbe91b3d9289284f18f2baba9877bca4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5f1fbba5-457f-42ea-bb23-53d0ea406bb0"},"level":"info","message":"Successfully set up experiment","requestID":"dbe91b3d9289284f18f2baba9877bca4"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"aa775820-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"aa77a640-6a0a-11ef-9b41-2363e6623fc8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5f1fbba5-457f-42ea-bb23-53d0ea406bb0"},"level":"info","message":"Successfully running experiment","requestID":"dbe91b3d9289284f18f2baba9877bca4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"aa781b70-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":799,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":799,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.675878,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":800,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/08230f7d-e341-48e1-a2fc-07c256a296bb","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"aa775820-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/08230f7d-e341-48e1-a2fc-07c256a296bb","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377951,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1MX0.yp4rE2FX9snE-zsvDkeci6JsgWw-IRqoD6Xbf75EokM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"aa775820-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":800,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.689173,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":801,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"aa77a640-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377951,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1MX0.yp4rE2FX9snE-zsvDkeci6JsgWw-IRqoD6Xbf75EokM"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"aa77a640-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08230f7d-e341-48e1-a2fc-07c256a296bb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"924885de-99d1-44f7-a02c-c61c26106bca","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377951.4074152} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08230f7d-e341-48e1-a2fc-07c256a296bb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08230f7d-e341-48e1-a2fc-07c256a296bb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:09.179388883Z"}]},"request_id":"aa1db598-26de-4e68-bf2d-55102f5bf57e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377951.4089615} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":801,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.750385,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/08230f7d-e341-48e1-a2fc-07c256a296bb","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"aa781b70-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/08230f7d-e341-48e1-a2fc-07c256a296bb","object_type":"device","rebac_allow":false,"scope_allow":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":"aa781b70-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"aa775820-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:09.231451732Z"}]},"request_id":"10e4162a-ff67-4c96-9c09-9efc83b3b983","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377951.4104276} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"aa77a640-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"aa781b70-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/08230f7d-e341-48e1-a2fc-07c256a296bb/signaling 200 18ms","method":"POST","requestID":"aa781b70-6a0a-11ef-9b41-2363e6623fc8","responseTime":18,"status":200,"url":"/devices/08230f7d-e341-48e1-a2fc-07c256a296bb/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"aa775820-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/08230f7d-e341-48e1-a2fc-07c256a296bb? 200 24ms","method":"GET","requestID":"aa775820-6a0a-11ef-9b41-2363e6623fc8","responseTime":24,"status":200,"url":"/devices/08230f7d-e341-48e1-a2fc-07c256a296bb?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"aa77a640-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27? 200 24ms","method":"GET","requestID":"aa77a640-6a0a-11ef-9b41-2363e6623fc8","responseTime":24,"status":200,"url":"/devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"aa7b76d0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5f1fbba5-457f-42ea-bb23-53d0ea406bb0#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5f1fbba5-457f-42ea-bb23-53d0ea406bb0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"f2d4abe1-823f-4edf-9e2a-ed02efb8a7ea","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377951.4220362} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"df7e4ae7-fb5b-47b1-9fa5-5ab32e6376a8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377951.4221685} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"aa7bc4f0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"dbe91b3d9289284f18f2baba9877bca4","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":802,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":803,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"67690ff9-ee26-41e1-bc13-a1aaecc35154","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377951.4271038} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":802,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.954435,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"aa7b76d0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"aa7b76d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08230f7d-e341-48e1-a2fc-07c256a296bb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5019bc89-6a57-41ef-a7c0-d63c770335bc","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377951.4294665} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":803,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.959082,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/08230f7d-e341-48e1-a2fc-07c256a296bb","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"aa7bc4f0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/08230f7d-e341-48e1-a2fc-07c256a296bb","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/5f1fbba5-457f-42ea-bb23-53d0ea406bb0","user":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"dbe91b3d9289284f18f2baba9877bca4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"aa7bc4f0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"POST /experiments? 201 134ms","method":"POST","requestID":"dbe91b3d9289284f18f2baba9877bca4","responseTime":134,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"03/Sep/2024:15:39:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"807","request_time":"0.139","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dbe91b3d9289284f18f2baba9877bca4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"aa7b76d0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27/signaling 200 12ms","method":"POST","requestID":"aa7b76d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":12,"status":200,"url":"/devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"aa7bc4f0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/08230f7d-e341-48e1-a2fc-07c256a296bb/signaling 200 12ms","method":"POST","requestID":"aa7bc4f0-6a0a-11ef-9b41-2363e6623fc8","responseTime":12,"status":200,"url":"/devices/08230f7d-e341-48e1-a2fc-07c256a296bb/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"aa7de7d0-6a0a-11ef-9b41-2363e6623fc8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1MX0.yp4rE2FX9snE-zsvDkeci6JsgWw-IRqoD6Xbf75EokM","level":"info","message":"auth send jwt","requestID":"790da021f0c23eee6fcc40825c6d1e69"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"790da021f0c23eee6fcc40825c6d1e69","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"790da021f0c23eee6fcc40825c6d1e69"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":804,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":805,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b26d1557-2190-4d48-9708-758d945d7a3c","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377951.4417937} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":805,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.642316,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/08230f7d-e341-48e1-a2fc-07c256a296bb","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"790da021f0c23eee6fcc40825c6d1e69","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/08230f7d-e341-48e1-a2fc-07c256a296bb","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377951,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1MX0.yp4rE2FX9snE-zsvDkeci6JsgWw-IRqoD6Xbf75EokM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"790da021f0c23eee6fcc40825c6d1e69","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":804,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.186021,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"aa7de7d0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"aa7de7d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"aa7de7d0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27/signaling 200 9ms","method":"POST","requestID":"aa7de7d0-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27/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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08230f7d-e341-48e1-a2fc-07c256a296bb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08230f7d-e341-48e1-a2fc-07c256a296bb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:09.179388883Z"}]},"request_id":"22458278-843f-46d7-943e-5b08b379ac11","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377951.4464362} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"790da021f0c23eee6fcc40825c6d1e69","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5f1fbba5-457f-42ea-bb23-53d0ea406bb0"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"dbe91b3d9289284f18f2baba9877bca4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5f1fbba5-457f-42ea-bb23-53d0ea406bb0"},"level":"info","message":"Building connection plan","requestID":"dbe91b3d9289284f18f2baba9877bca4"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"664bed80-9450-4e09-bdf4-f40bfce4af52"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"6453e98c-5b96-4a50-9727-2f1486caab75"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"6e4a298e-df90-41af-beb5-6e8114a1e8d1"}]},"level":"info","message":"Built pairwise service configurations","requestID":"dbe91b3d9289284f18f2baba9877bca4"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/08230f7d-e341-48e1-a2fc-07c256a296bb"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"dbe91b3d9289284f18f2baba9877bca4"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"aa7fbc90-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"790da021f0c23eee6fcc40825c6d1e69"} gateway-1 | {"time_local":"03/Sep/2024:15:39:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/08230f7d-e341-48e1-a2fc-07c256a296bb? 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":"790da021f0c23eee6fcc40825c6d1e69"} device-1 | {"level":"info","message":"GET /devices/08230f7d-e341-48e1-a2fc-07c256a296bb? 200 12ms","method":"GET","requestID":"790da021f0c23eee6fcc40825c6d1e69","responseTime":12,"status":200,"url":"/devices/08230f7d-e341-48e1-a2fc-07c256a296bb?"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":806,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":806,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.840986,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"aa7fbc90-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377951,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1MX0.yp4rE2FX9snE-zsvDkeci6JsgWw-IRqoD6Xbf75EokM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"aa7fbc90-6a0a-11ef-9b41-2363e6623fc8","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1MX0.yp4rE2FX9snE-zsvDkeci6JsgWw-IRqoD6Xbf75EokM","level":"info","message":"auth send jwt","requestID":"8fcdb41620b4e09a67d99d7571db3bcf"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8fcdb41620b4e09a67d99d7571db3bcf","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8fcdb41620b4e09a67d99d7571db3bcf"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":807,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":807,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.630095,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"8fcdb41620b4e09a67d99d7571db3bcf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377951,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1MX0.yp4rE2FX9snE-zsvDkeci6JsgWw-IRqoD6Xbf75EokM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8fcdb41620b4e09a67d99d7571db3bcf","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","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%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"e0228dad-755f-4747-b80a-6c12cd489bf7","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377951.4665968} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"216225de-e22d-414c-9deb-81b76f7bc27d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377951.4668593} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:09.231451732Z"}]},"request_id":"32f99ab7-b16d-4911-b8a3-dedd315cffcb","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377951.46727} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"8fcdb41620b4e09a67d99d7571db3bcf","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"aa7fbc90-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8fcdb41620b4e09a67d99d7571db3bcf"} device-1 | {"level":"info","message":"GET /devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27? 200 14ms","method":"GET","requestID":"8fcdb41620b4e09a67d99d7571db3bcf","responseTime":14,"status":200,"url":"/devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27?"} gateway-1 | {"time_local":"03/Sep/2024:15:39:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27? 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":"8fcdb41620b4e09a67d99d7571db3bcf"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"aa7fbc90-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"aa7fbc90-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/fd82e614-d230-4e1d-a17b-ff8b890b8bca'","requestID":"aa7fbc90-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/fd82e614-d230-4e1d-a17b-ff8b890b8bca'","requestID":"aa7fbc90-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"aa7fbc90-6a0a-11ef-9b41-2363e6623fc8"} 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":"aa7fbc90-6a0a-11ef-9b41-2363e6623fc8","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":"aa7fbc90-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/fd82e614-d230-4e1d-a17b-ff8b890b8bca","device":"03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","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/fd82e614-d230-4e1d-a17b-ff8b890b8bca","device":"08230f7d-e341-48e1-a2fc-07c256a296bb","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/5f1fbba5-457f-42ea-bb23-53d0ea406bb0"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"dbe91b3d9289284f18f2baba9877bca4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"aa886f20-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":808,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08230f7d-e341-48e1-a2fc-07c256a296bb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ab5824fe-9a98-426e-800f-2dbc4041237a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377951.5105681} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":808,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.575808,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/08230f7d-e341-48e1-a2fc-07c256a296bb","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"aa886f20-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/08230f7d-e341-48e1-a2fc-07c256a296bb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"aa886f20-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"aa886f20-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/08230f7d-e341-48e1-a2fc-07c256a296bb/signaling 200 9ms","method":"POST","requestID":"aa886f20-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/devices/08230f7d-e341-48e1-a2fc-07c256a296bb/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"aa8a1cd0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"device":"08230f7d-e341-48e1-a2fc-07c256a296bb","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"08230f7d-e341-48e1-a2fc-07c256a296bb","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":809,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7e302868-dbb8-4fa7-b639-9bc27c21d74b","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377951.5221055} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":809,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.953961,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"aa8a1cd0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"aa8a1cd0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"aa8a1cd0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27/signaling 200 10ms","method":"POST","requestID":"aa8a1cd0-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 476622941995523610 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:mkFr\r\na=ice-pwd:R3V4/gcFUFhlHJ5PbX3t66O1\r\na=ice-options:trickle\r\na=fingerprint:sha-256 60:1C:B3:C2:CB:F7:9B:63:99:25:3E:F6:9B:98:56:B7:F8:8B:CB:E2:3D:D0:76:83:C4:9A:73:4B:BD:F9:EF:18\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"08230f7d-e341-48e1-a2fc-07c256a296bb","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 6673137731092406578 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:fqCO\r\na=ice-pwd:/drZ52LJNJijB4OJb9Z+Y3QJ\r\na=ice-options:trickle\r\na=fingerprint:sha-256 E7:D5:A1:90:C6:E0:5B:4C:FF:78:B5:C0:C1:8E:F1:FB:C0:19:9E:BA:8A:3B:23:6D:7D:13:BD:92:AB:87:CF:0E\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:1658506976 1 udp 2113937151 3b1408f1-cf0f-41ab-a534-c62b25926f54.local 41271 typ host generation 0 ufrag fqCO network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3874989215 1 udp 1677729535 141.24.211.56 41271 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag fqCO network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","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/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27'"} device-1 | {"content":{"candidate":"candidate:879022815 1 udp 2113937151 12a5bc70-892c-4e93-be4f-5ceca4573bd7.local 47348 typ host generation 0 ufrag mkFr network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"08230f7d-e341-48e1-a2fc-07c256a296bb","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2807002060 1 udp 1677729535 141.24.211.56 47348 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag mkFr network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"08230f7d-e341-48e1-a2fc-07c256a296bb","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/08230f7d-e341-48e1-a2fc-07c256a296bb'"} device-1 | {"device":"08230f7d-e341-48e1-a2fc-07c256a296bb","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","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/fd82e614-d230-4e1d-a17b-ff8b890b8bca' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"fd82e614-d230-4e1d-a17b-ff8b890b8bca","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"08230f7d-e341-48e1-a2fc-07c256a296bb","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"08230f7d-e341-48e1-a2fc-07c256a296bb","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8401e3a7ec894f262fc55a3d75c7d3be","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8401e3a7ec894f262fc55a3d75c7d3be","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/08230f7d-e341-48e1-a2fc-07c256a296bb"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/fd82e614-d230-4e1d-a17b-ff8b890b8bca"}}},"level":"info","message":"received a callback","requestID":"8401e3a7ec894f262fc55a3d75c7d3be"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"8401e3a7ec894f262fc55a3d75c7d3be","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:39:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.008","http_referrer":"","http_user_agent":"node-fetch","requestID":"8401e3a7ec894f262fc55a3d75c7d3be"} device-1 | {"device":"03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"fd82e614-d230-4e1d-a17b-ff8b890b8bca","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"fd82e614-d230-4e1d-a17b-ff8b890b8bca","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/fd82e614-d230-4e1d-a17b-ff8b890b8bca' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"fd82e614-d230-4e1d-a17b-ff8b890b8bca","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"797e6f3bda15fa7e754ea7a9fdec248c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"797e6f3bda15fa7e754ea7a9fdec248c","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/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/08230f7d-e341-48e1-a2fc-07c256a296bb"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/fd82e614-d230-4e1d-a17b-ff8b890b8bca"}}},"level":"info","message":"received a callback","requestID":"797e6f3bda15fa7e754ea7a9fdec248c"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"aa945600-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":810,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ffd82e614-d230-4e1d-a17b-ff8b890b8bca","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8002a80f-711a-4972-ba16-48ccbff965bf","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377951.5883877} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":810,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.108858,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/fd82e614-d230-4e1d-a17b-ff8b890b8bca","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"aa945600-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/fd82e614-d230-4e1d-a17b-ff8b890b8bca","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":"aa945600-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"aa945600-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /peerconnections/fd82e614-d230-4e1d-a17b-ff8b890b8bca 200 7ms","method":"GET","requestID":"aa945600-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/peerconnections/fd82e614-d230-4e1d-a17b-ff8b890b8bca"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 25ms","method":"POST","requestID":"797e6f3bda15fa7e754ea7a9fdec248c","responseTime":25,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:39:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.028","http_referrer":"","http_user_agent":"node-fetch","requestID":"797e6f3bda15fa7e754ea7a9fdec248c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"aa97b160-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":811,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1b4c54d9-115f-4c34-bb84-26508f3a8b47","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377951.6099868} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":811,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.063534,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"aa97b160-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"aa97b160-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"aa97b160-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27/signaling 200 7ms","method":"POST","requestID":"aa97b160-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"aa9910f0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":812,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08230f7d-e341-48e1-a2fc-07c256a296bb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"89d8f0da-a9ac-400c-b87f-4b48c0f74ff2","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377951.6188536} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":812,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.336383,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/08230f7d-e341-48e1-a2fc-07c256a296bb","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"aa9910f0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/08230f7d-e341-48e1-a2fc-07c256a296bb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"aa9910f0-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"aa9910f0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/08230f7d-e341-48e1-a2fc-07c256a296bb/signaling 200 7ms","method":"POST","requestID":"aa9910f0-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/devices/08230f7d-e341-48e1-a2fc-07c256a296bb/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1MX0.yp4rE2FX9snE-zsvDkeci6JsgWw-IRqoD6Xbf75EokM","level":"info","message":"auth send jwt","requestID":"e7196339c84dae6f57244e209b73f385"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e7196339c84dae6f57244e209b73f385","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/5f1fbba5-457f-42ea-bb23-53d0ea406bb0","requestID":"e7196339c84dae6f57244e209b73f385"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":813,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":813,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.249784,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5f1fbba5-457f-42ea-bb23-53d0ea406bb0","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"e7196339c84dae6f57244e209b73f385","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/5f1fbba5-457f-42ea-bb23-53d0ea406bb0","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377951,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1MX0.yp4rE2FX9snE-zsvDkeci6JsgWw-IRqoD6Xbf75EokM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e7196339c84dae6f57244e209b73f385","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/5f1fbba5-457f-42ea-bb23-53d0ea406bb0","requestID":"e7196339c84dae6f57244e209b73f385"} gateway-1 | {"time_local":"03/Sep/2024:15:39:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/5f1fbba5-457f-42ea-bb23-53d0ea406bb0 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":"e7196339c84dae6f57244e209b73f385"} experiment-1 | {"level":"info","message":"GET /experiments/5f1fbba5-457f-42ea-bb23-53d0ea406bb0 200 13ms","method":"GET","requestID":"e7196339c84dae6f57244e209b73f385","responseTime":13,"status":200,"url":"/experiments/5f1fbba5-457f-42ea-bb23-53d0ea406bb0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1MX0.yp4rE2FX9snE-zsvDkeci6JsgWw-IRqoD6Xbf75EokM","level":"info","message":"auth send jwt","requestID":"acbbe7bcd63ae4c29064e29127742103"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"acbbe7bcd63ae4c29064e29127742103","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/5f1fbba5-457f-42ea-bb23-53d0ea406bb0","requestID":"acbbe7bcd63ae4c29064e29127742103"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":814,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":814,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.144394,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5f1fbba5-457f-42ea-bb23-53d0ea406bb0","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"acbbe7bcd63ae4c29064e29127742103","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/5f1fbba5-457f-42ea-bb23-53d0ea406bb0","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377951,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1MX0.yp4rE2FX9snE-zsvDkeci6JsgWw-IRqoD6Xbf75EokM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"acbbe7bcd63ae4c29064e29127742103","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5f1fbba5-457f-42ea-bb23-53d0ea406bb0"},"level":"info","message":"Attempting to finish experiment","requestID":"acbbe7bcd63ae4c29064e29127742103"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"aaa40d70-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":815,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":815,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.803017,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/fd82e614-d230-4e1d-a17b-ff8b890b8bca","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"aaa40d70-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:http://localhost/peerconnections/fd82e614-d230-4e1d-a17b-ff8b890b8bca","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377951,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1MX0.yp4rE2FX9snE-zsvDkeci6JsgWw-IRqoD6Xbf75EokM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"aaa40d70-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/fd82e614-d230-4e1d-a17b-ff8b890b8bca","device":"03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/fd82e614-d230-4e1d-a17b-ff8b890b8bca","device":"08230f7d-e341-48e1-a2fc-07c256a296bb","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/fd82e614-d230-4e1d-a17b-ff8b890b8bca' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/fd82e614-d230-4e1d-a17b-ff8b890b8bca' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"fd82e614-d230-4e1d-a17b-ff8b890b8bca","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ffd82e614-d230-4e1d-a17b-ff8b890b8bca': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ffd82e614-d230-4e1d-a17b-ff8b890b8bca","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"f4342d41-4ea5-4f8d-a736-2cb845062b5e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377951.7021434} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bd0b885e-0f5e-4ee1-9f8a-bd382acbf114","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377951.7024572} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f5fe11cf1a076883ddef7e506761b82a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f5fe11cf1a076883ddef7e506761b82a","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"aaa40d70-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"eec3c27218c56f85b295131c060b51d4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/08230f7d-e341-48e1-a2fc-07c256a296bb"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/fd82e614-d230-4e1d-a17b-ff8b890b8bca"}}},"level":"info","message":"received a callback","requestID":"f5fe11cf1a076883ddef7e506761b82a"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"eec3c27218c56f85b295131c060b51d4","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":"closed","url":"http://localhost/devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/08230f7d-e341-48e1-a2fc-07c256a296bb"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/fd82e614-d230-4e1d-a17b-ff8b890b8bca"}}},"level":"info","message":"received a callback","requestID":"eec3c27218c56f85b295131c060b51d4"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"aaa40d70-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"DELETE /peerconnections/fd82e614-d230-4e1d-a17b-ff8b890b8bca 204 34ms","method":"DELETE","requestID":"aaa40d70-6a0a-11ef-9b41-2363e6623fc8","responseTime":34,"status":204,"url":"/peerconnections/fd82e614-d230-4e1d-a17b-ff8b890b8bca"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/08230f7d-e341-48e1-a2fc-07c256a296bb'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5f1fbba5-457f-42ea-bb23-53d0ea406bb0"},"level":"info","message":"Successfully finished experiment","requestID":"acbbe7bcd63ae4c29064e29127742103"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"aaabfcb0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":816,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"80f46b28-08c9-473f-9e03-3799e67ac9ec","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377951.743177} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":816,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.164881,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"aaabfcb0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"aaabfcb0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"aaabfcb0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27/signaling 200 8ms","method":"POST","requestID":"aaabfcb0-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"aaad8350-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5f1fbba5-457f-42ea-bb23-53d0ea406bb0': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5f1fbba5-457f-42ea-bb23-53d0ea406bb0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"88787285-b12d-4816-8c94-84a14a44b50f","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377951.749954} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d6849ee8-0aad-4d9b-9c14-947af1f56264","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377951.7502792} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"acbbe7bcd63ae4c29064e29127742103","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":817,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08230f7d-e341-48e1-a2fc-07c256a296bb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"62e96120-bd74-46a7-bf17-0038ffcd4309","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377951.7538126} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":817,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.318672,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/08230f7d-e341-48e1-a2fc-07c256a296bb","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"aaad8350-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/08230f7d-e341-48e1-a2fc-07c256a296bb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"aaad8350-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"aaad8350-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/08230f7d-e341-48e1-a2fc-07c256a296bb/signaling 200 9ms","method":"POST","requestID":"aaad8350-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/devices/08230f7d-e341-48e1-a2fc-07c256a296bb/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/5f1fbba5-457f-42ea-bb23-53d0ea406bb0","requestID":"acbbe7bcd63ae4c29064e29127742103"} gateway-1 | {"time_local":"03/Sep/2024:15:39:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/5f1fbba5-457f-42ea-bb23-53d0ea406bb0 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.145","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"acbbe7bcd63ae4c29064e29127742103"} experiment-1 | {"level":"info","message":"DELETE /experiments/5f1fbba5-457f-42ea-bb23-53d0ea406bb0 204 142ms","method":"DELETE","requestID":"acbbe7bcd63ae4c29064e29127742103","responseTime":142,"status":204,"url":"/experiments/5f1fbba5-457f-42ea-bb23-53d0ea406bb0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1MX0.yp4rE2FX9snE-zsvDkeci6JsgWw-IRqoD6Xbf75EokM","level":"info","message":"auth send jwt","requestID":"aa1b225ac5cfe3971822b037ac514eed"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"aa1b225ac5cfe3971822b037ac514eed","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"aa1b225ac5cfe3971822b037ac514eed"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 121ms","method":"POST","requestID":"f5fe11cf1a076883ddef7e506761b82a","responseTime":121,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:39:11 +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.586","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"91adfc85e68fac8a9f29e0ec5696bbe8"} gateway-1 | {"time_local":"03/Sep/2024:15:39:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2645","request_time":"0.600","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"46717500c396aa2062cc81fe6c637fd6"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":818,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":818,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.868661,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"aa1b225ac5cfe3971822b037ac514eed","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377951,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1MX0.yp4rE2FX9snE-zsvDkeci6JsgWw-IRqoD6Xbf75EokM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"aa1b225ac5cfe3971822b037ac514eed","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"03/Sep/2024:15:39:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.131","http_referrer":"","http_user_agent":"node-fetch","requestID":"f5fe11cf1a076883ddef7e506761b82a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 128ms","method":"POST","requestID":"eec3c27218c56f85b295131c060b51d4","responseTime":128,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:39:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.132","http_referrer":"","http_user_agent":"node-fetch","requestID":"eec3c27218c56f85b295131c060b51d4"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/03cdf90c-6c05-4f67-9d1c-b733dbcd6f27' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/08230f7d-e341-48e1-a2fc-07c256a296bb' 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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4edabbcb-e682-4645-856c-adac4efe339f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c37c617e-095b-4166-bc23-7ee6eef24e0a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377951.8472493} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"aa1b225ac5cfe3971822b037ac514eed","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8af75f61-ad45-4864-8c5a-fdc47acc2b1f","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377951.851317} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"aa1b225ac5cfe3971822b037ac514eed","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4edabbcb-e682-4645-856c-adac4efe339f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"48670a66-50ca-4bff-aa46-4f72830ddd27","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377951.8621705} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cc033fae-20fc-4b1a-9e92-504455bd6468","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377951.8622508} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"aa1b225ac5cfe3971822b037ac514eed","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4edabbcb-e682-4645-856c-adac4efe339f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4edabbcb-e682-4645-856c-adac4efe339f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:11.862146592Z"}]},"request_id":"ebb4a757-35ed-4b34-bcf4-211bcbb17a5f","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377951.8659034} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"aa1b225ac5cfe3971822b037ac514eed","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"aa1b225ac5cfe3971822b037ac514eed"} gateway-1 | {"time_local":"03/Sep/2024:15:39:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"315","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"aa1b225ac5cfe3971822b037ac514eed"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"aa1b225ac5cfe3971822b037ac514eed","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1MX0.yp4rE2FX9snE-zsvDkeci6JsgWw-IRqoD6Xbf75EokM","level":"info","message":"auth send jwt","requestID":"b493debcb0d47ba3054f63a22ff0fc11"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b493debcb0d47ba3054f63a22ff0fc11","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"b493debcb0d47ba3054f63a22ff0fc11"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":819,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":819,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.682443,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"b493debcb0d47ba3054f63a22ff0fc11","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377951,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1MX0.yp4rE2FX9snE-zsvDkeci6JsgWw-IRqoD6Xbf75EokM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b493debcb0d47ba3054f63a22ff0fc11","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1453295d-c400-49ca-b825-e70ea484c15f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"f40c98ff-54f3-45ff-820b-a6b98529f9c0","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377951.8874657} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b493debcb0d47ba3054f63a22ff0fc11","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"425fceb7-11c3-4306-ac82-4df467e43358","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377951.890956} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"b493debcb0d47ba3054f63a22ff0fc11","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1453295d-c400-49ca-b825-e70ea484c15f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"75a677a5-9b1d-4fde-bb73-dcf8750264ff","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377951.9052212} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"66f8ba12-ceaf-4461-9a5c-c9ce0624abbc","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377951.9053311} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"b493debcb0d47ba3054f63a22ff0fc11","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1453295d-c400-49ca-b825-e70ea484c15f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1453295d-c400-49ca-b825-e70ea484c15f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:11.905197704Z"}]},"request_id":"60c4891c-460c-4c47-8929-78478b6ab250","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377951.9084518} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b493debcb0d47ba3054f63a22ff0fc11","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b493debcb0d47ba3054f63a22ff0fc11"} gateway-1 | {"time_local":"03/Sep/2024:15:39:11 +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":"b493debcb0d47ba3054f63a22ff0fc11"} device-1 | {"level":"info","message":"POST /devices? 201 38ms","method":"POST","requestID":"b493debcb0d47ba3054f63a22ff0fc11","responseTime":38,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a312e91c7f3c301aed2f894d9fa7cf33","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"a312e91c7f3c301aed2f894d9fa7cf33","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"03/Sep/2024:15:39:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/1453295d-c400-49ca-b825-e70ea484c15f/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":"a312e91c7f3c301aed2f894d9fa7cf33"} device-1 | {"level":"info","message":"OPTIONS /devices/1453295d-c400-49ca-b825-e70ea484c15f/websocket 200 2ms","method":"OPTIONS","requestID":"a312e91c7f3c301aed2f894d9fa7cf33","responseTime":2,"status":200,"url":"/devices/1453295d-c400-49ca-b825-e70ea484c15f/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1M30.PJ8AM-5Thm_ApDLZLBILWdv4biPUqk2rdzniIxjSr-o","level":"info","message":"auth send jwt","requestID":"931fda67e1708ed5d5b0e9637b73ef76"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"931fda67e1708ed5d5b0e9637b73ef76","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"931fda67e1708ed5d5b0e9637b73ef76"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":820,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:13Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":820,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.685247,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:13Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1453295d-c400-49ca-b825-e70ea484c15f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"931fda67e1708ed5d5b0e9637b73ef76","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/1453295d-c400-49ca-b825-e70ea484c15f","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377953,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1M30.PJ8AM-5Thm_ApDLZLBILWdv4biPUqk2rdzniIxjSr-o"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"931fda67e1708ed5d5b0e9637b73ef76","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"931fda67e1708ed5d5b0e9637b73ef76"} gateway-1 | {"time_local":"03/Sep/2024:15:39:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/1453295d-c400-49ca-b825-e70ea484c15f/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":"931fda67e1708ed5d5b0e9637b73ef76"} device-1 | {"level":"info","message":"POST /devices/1453295d-c400-49ca-b825-e70ea484c15f/websocket 200 22ms","method":"POST","requestID":"931fda67e1708ed5d5b0e9637b73ef76","responseTime":22,"status":200,"url":"/devices/1453295d-c400-49ca-b825-e70ea484c15f/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/1453295d-c400-49ca-b825-e70ea484c15f' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1M30.PJ8AM-5Thm_ApDLZLBILWdv4biPUqk2rdzniIxjSr-o","level":"info","message":"auth send jwt","requestID":"9ff58756d058c4bce4b33f2804de82b4"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"9ff58756d058c4bce4b33f2804de82b4","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9ff58756d058c4bce4b33f2804de82b4"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":821,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:13Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":821,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.187842,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1453295d-c400-49ca-b825-e70ea484c15f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"9ff58756d058c4bce4b33f2804de82b4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/1453295d-c400-49ca-b825-e70ea484c15f","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377953,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1M30.PJ8AM-5Thm_ApDLZLBILWdv4biPUqk2rdzniIxjSr-o"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9ff58756d058c4bce4b33f2804de82b4","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1453295d-c400-49ca-b825-e70ea484c15f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1453295d-c400-49ca-b825-e70ea484c15f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:11.905197704Z"}]},"request_id":"3d01776c-a5ba-4287-a52d-92123c19d1a0","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377954.0014055} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9ff58756d058c4bce4b33f2804de82b4","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9ff58756d058c4bce4b33f2804de82b4"} gateway-1 | {"time_local":"03/Sep/2024:15:39:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1453295d-c400-49ca-b825-e70ea484c15f? 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":"9ff58756d058c4bce4b33f2804de82b4"} device-1 | {"level":"info","message":"GET /devices/1453295d-c400-49ca-b825-e70ea484c15f? 200 17ms","method":"GET","requestID":"9ff58756d058c4bce4b33f2804de82b4","responseTime":17,"status":200,"url":"/devices/1453295d-c400-49ca-b825-e70ea484c15f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1NH0.oYUVoHMqHUDPnCoCRmAHdeG-TPiQ-qcdEDYZkFIysZo","level":"info","message":"auth send jwt","requestID":"be40bad79e2564b025c25c62b13ebec9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"be40bad79e2564b025c25c62b13ebec9","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"be40bad79e2564b025c25c62b13ebec9"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":822,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:14Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":822,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.218314,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:14Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"be40bad79e2564b025c25c62b13ebec9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377954,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1NH0.oYUVoHMqHUDPnCoCRmAHdeG-TPiQ-qcdEDYZkFIysZo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"be40bad79e2564b025c25c62b13ebec9","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7147470f-cf52-4d40-bf58-a47f568e6bcc"},"level":"info","message":"Attempting to run experiment","requestID":"be40bad79e2564b025c25c62b13ebec9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7147470f-cf52-4d40-bf58-a47f568e6bcc"},"level":"info","message":"Attempting to book experiment","requestID":"be40bad79e2564b025c25c62b13ebec9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7147470f-cf52-4d40-bf58-a47f568e6bcc"},"level":"info","message":"Successfully booked experiment","requestID":"be40bad79e2564b025c25c62b13ebec9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ac0dfdb0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ac0e4bd0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":823,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:14Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":823,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.045341,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4edabbcb-e682-4645-856c-adac4efe339f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"ac0dfdb0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/4edabbcb-e682-4645-856c-adac4efe339f","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377954,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1NH0.oYUVoHMqHUDPnCoCRmAHdeG-TPiQ-qcdEDYZkFIysZo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ac0dfdb0-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":824,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:14Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":824,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.107266,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1453295d-c400-49ca-b825-e70ea484c15f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"ac0e4bd0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/1453295d-c400-49ca-b825-e70ea484c15f","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377954,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1NH0.oYUVoHMqHUDPnCoCRmAHdeG-TPiQ-qcdEDYZkFIysZo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ac0e4bd0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4edabbcb-e682-4645-856c-adac4efe339f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4edabbcb-e682-4645-856c-adac4efe339f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:11.862146592Z"}]},"request_id":"fdcba7d4-34e9-46b8-bcf1-0a02aa2abc7f","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377954.0702858} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ac0dfdb0-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1453295d-c400-49ca-b825-e70ea484c15f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1453295d-c400-49ca-b825-e70ea484c15f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:11.905197704Z"}]},"request_id":"ef8a8b74-2f4f-4a81-af39-aad94f50c6c8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377954.0718966} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ac0e4bd0-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ac0dfdb0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/4edabbcb-e682-4645-856c-adac4efe339f? 200 19ms","method":"GET","requestID":"ac0dfdb0-6a0a-11ef-9b41-2363e6623fc8","responseTime":19,"status":200,"url":"/devices/4edabbcb-e682-4645-856c-adac4efe339f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ac0e4bd0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/1453295d-c400-49ca-b825-e70ea484c15f? 200 18ms","method":"GET","requestID":"ac0e4bd0-6a0a-11ef-9b41-2363e6623fc8","responseTime":18,"status":200,"url":"/devices/1453295d-c400-49ca-b825-e70ea484c15f?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7147470f-cf52-4d40-bf58-a47f568e6bcc"},"level":"info","message":"Setting up experiment","requestID":"be40bad79e2564b025c25c62b13ebec9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7147470f-cf52-4d40-bf58-a47f568e6bcc"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"be40bad79e2564b025c25c62b13ebec9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7147470f-cf52-4d40-bf58-a47f568e6bcc"},"level":"info","message":"Successfully locked booking for experiment","requestID":"be40bad79e2564b025c25c62b13ebec9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7147470f-cf52-4d40-bf58-a47f568e6bcc"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"be40bad79e2564b025c25c62b13ebec9"} device-1 | {"level":"info","message":"postDevicesByDeviceId called","requestID":"ac141830-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":825,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:14Z"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":825,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.289231,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:14Z"} authorization-1 | {"action":"instantiate","level":"info","message":"opa_check","object":"device:http://localhost/devices/4edabbcb-e682-4645-856c-adac4efe339f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"ac141830-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/4edabbcb-e682-4645-856c-adac4efe339f","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377954,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1NH0.oYUVoHMqHUDPnCoCRmAHdeG-TPiQ-qcdEDYZkFIysZo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ac141830-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd28db222-f705-487b-b02b-5579ebb535ad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"1c75af35-ec99-49ff-bdd8-c104ffc88fe3","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377954.1284602} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"82fc592d-9d52-4ab4-bf8e-0100f84a55a8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377954.128857} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"ac141830-6a0a-11ef-9b41-2363e6623fc8","responseTime":11,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"registering changed-callback for device 'http://localhost/devices/d28db222-f705-487b-b02b-5579ebb535ad' to 'http://localhost/callbacks/experiment'","requestID":"ac141830-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postDevicesByDeviceId succeeded","requestID":"ac141830-6a0a-11ef-9b41-2363e6623fc8"} authentication-1 | {"level":"info","message":"POST /token 201 26ms","method":"POST","requestID":"ac1a32b0-6a0a-11ef-95a2-591853eeaffe","responseTime":26,"status":201,"url":"/token"} device-1 | {"level":"info","message":"POST /devices/4edabbcb-e682-4645-856c-adac4efe339f?changedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 73ms","method":"POST","requestID":"ac141830-6a0a-11ef-9b41-2363e6623fc8","responseTime":73,"status":201,"url":"/devices/4edabbcb-e682-4645-856c-adac4efe339f?changedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7147470f-cf52-4d40-bf58-a47f568e6bcc"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"be40bad79e2564b025c25c62b13ebec9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7147470f-cf52-4d40-bf58-a47f568e6bcc"},"level":"info","message":"Attempting to update booking for experiment","requestID":"be40bad79e2564b025c25c62b13ebec9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7147470f-cf52-4d40-bf58-a47f568e6bcc"},"level":"info","message":"Successfully updated booking for experiment","requestID":"be40bad79e2564b025c25c62b13ebec9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7147470f-cf52-4d40-bf58-a47f568e6bcc"},"level":"info","message":"Successfully set up experiment","requestID":"be40bad79e2564b025c25c62b13ebec9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ac277920-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ac27c740-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Received request.","req_id":826,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:14Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7147470f-cf52-4d40-bf58-a47f568e6bcc"},"level":"info","message":"Successfully running experiment","requestID":"be40bad79e2564b025c25c62b13ebec9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ac283c70-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:32964","level":"info","msg":"Sent response.","req_id":826,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.76994,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:14Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":827,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d28db222-f705-487b-b02b-5579ebb535ad","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"ac277920-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/d28db222-f705-487b-b02b-5579ebb535ad","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377954,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1NH0.oYUVoHMqHUDPnCoCRmAHdeG-TPiQ-qcdEDYZkFIysZo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ac277920-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":827,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.229693,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1453295d-c400-49ca-b825-e70ea484c15f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"ac27c740-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/1453295d-c400-49ca-b825-e70ea484c15f","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377954,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1NH0.oYUVoHMqHUDPnCoCRmAHdeG-TPiQ-qcdEDYZkFIysZo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ac27c740-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":828,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:14Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd28db222-f705-487b-b02b-5579ebb535ad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd28db222-f705-487b-b02b-5579ebb535ad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:14.128405970Z"}]},"request_id":"3aaeab5d-4532-4361-8d21-e5f7b19c8fe8","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377954.2422283} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd28db222-f705-487b-b02b-5579ebb535ad","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"79866dc5-b691-4145-9697-64ce378d4438","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377954.24283} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"ac277920-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":828,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.680288,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:14Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1453295d-c400-49ca-b825-e70ea484c15f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1453295d-c400-49ca-b825-e70ea484c15f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:11.905197704Z"}]},"request_id":"fd807eb6-38be-4bfa-ad08-ac1d7ad5b9a3","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377954.2445524} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d28db222-f705-487b-b02b-5579ebb535ad","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"ac283c70-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d28db222-f705-487b-b02b-5579ebb535ad","object_type":"device","rebac_allow":false,"scope_allow":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":"ac283c70-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"ac27c740-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7147470f-cf52-4d40-bf58-a47f568e6bcc#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7147470f-cf52-4d40-bf58-a47f568e6bcc","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"b1b0573a-dffc-484b-83aa-dca32b8f0c90","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377954.251574} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2040e9c4-a38f-4af6-b38e-8f5bd047e70e","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377954.2517936} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ac277920-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"be40bad79e2564b025c25c62b13ebec9","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"GET /devices/d28db222-f705-487b-b02b-5579ebb535ad? 200 28ms","method":"GET","requestID":"ac277920-6a0a-11ef-9b41-2363e6623fc8","responseTime":28,"status":200,"url":"/devices/d28db222-f705-487b-b02b-5579ebb535ad?"} device-1 | {"data":{"error":"MissingEntityError","message":"Could not find websocket connection for device d28db222-f705-487b-b02b-5579ebb535ad","method":"POST","stack":"MissingEntityError: Could not find websocket connection for device d28db222-f705-487b-b02b-5579ebb535ad\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/d28db222-f705-487b-b02b-5579ebb535ad/signaling"},"level":"error","message":"An error occurred during the handling of a request","requestID":"ac283c70-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/d28db222-f705-487b-b02b-5579ebb535ad/signaling 404 26ms","method":"POST","requestID":"ac283c70-6a0a-11ef-9b41-2363e6623fc8","responseTime":26,"status":404,"url":"/devices/d28db222-f705-487b-b02b-5579ebb535ad/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ac27c740-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/1453295d-c400-49ca-b825-e70ea484c15f? 200 30ms","method":"GET","requestID":"ac27c740-6a0a-11ef-9b41-2363e6623fc8","responseTime":30,"status":200,"url":"/devices/1453295d-c400-49ca-b825-e70ea484c15f?"} experiment-1 | {"data":{"response":{"body":{"error":"MissingEntityError","message":"Could not find websocket connection for device d28db222-f705-487b-b02b-5579ebb535ad"},"status":404}},"level":"error","message":"Could not send status-update message","requestID":"be40bad79e2564b025c25c62b13ebec9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ac2cf760-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":829,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:14Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/7147470f-cf52-4d40-bf58-a47f568e6bcc","user":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"be40bad79e2564b025c25c62b13ebec9"} gateway-1 | {"time_local":"03/Sep/2024:15:39:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1107","request_time":"0.258","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"be40bad79e2564b025c25c62b13ebec9"} experiment-1 | {"level":"info","message":"POST /experiments? 201 252ms","method":"POST","requestID":"be40bad79e2564b025c25c62b13ebec9","responseTime":252,"status":201,"url":"/experiments?"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1453295d-c400-49ca-b825-e70ea484c15f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c25eca97-c37c-403f-af22-324589e014d1","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377954.26924} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":829,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.712623,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1453295d-c400-49ca-b825-e70ea484c15f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"ac2cf760-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1453295d-c400-49ca-b825-e70ea484c15f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"ac2cf760-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ac2cf760-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/1453295d-c400-49ca-b825-e70ea484c15f/signaling 200 12ms","method":"POST","requestID":"ac2cf760-6a0a-11ef-9b41-2363e6623fc8","responseTime":12,"status":200,"url":"/devices/1453295d-c400-49ca-b825-e70ea484c15f/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"022d47798d57ecd646b14ff4a8667cc3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"022d47798d57ecd646b14ff4a8667cc3","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/d28db222-f705-487b-b02b-5579ebb535ad/websocket 200 1ms","method":"OPTIONS","requestID":"022d47798d57ecd646b14ff4a8667cc3","responseTime":1,"status":200,"url":"/devices/d28db222-f705-487b-b02b-5579ebb535ad/websocket"} gateway-1 | {"time_local":"03/Sep/2024:15:39:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/d28db222-f705-487b-b02b-5579ebb535ad/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":"022d47798d57ecd646b14ff4a8667cc3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6Ilc0QUJPeFVmUW9uTEtEOXU1SVV4aDR3MUhJNThHU0o2RlpZSng0elZzbXpNdnc2OUNodXpCWWtGLUFjUzZYYktkUXZPOU1nZmVPR081QU5PTXp1U2l3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1Nn0.kIqvtcnHvJdL0Wu94F-3Z6_ES8HcyZOll3fft_4af-E","level":"info","message":"auth send jwt","requestID":"dbfa69e91b172abede29ba789b798b29"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"dbfa69e91b172abede29ba789b798b29","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"dbfa69e91b172abede29ba789b798b29"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":830,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:16Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":830,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.162919,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:16Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d28db222-f705-487b-b02b-5579ebb535ad","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"dbfa69e91b172abede29ba789b798b29","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/d28db222-f705-487b-b02b-5579ebb535ad","object_type":"device","payload":{"admin":true,"edgeToken":"W4ABOxUfQonLKD9u5IUxh4w1HI58GSJ6FZYJx4zVsmzMvw69ChuzBYkF-AcS6XbKdQvO9MgfeOGO5ANOMzuSiw","iat":1725377956,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6Ilc0QUJPeFVmUW9uTEtEOXU1SVV4aDR3MUhJNThHU0o2RlpZSng0elZzbXpNdnc2OUNodXpCWWtGLUFjUzZYYktkUXZPOU1nZmVPR081QU5PTXp1U2l3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1Nn0.kIqvtcnHvJdL0Wu94F-3Z6_ES8HcyZOll3fft_4af-E"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"dbfa69e91b172abede29ba789b798b29","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"dbfa69e91b172abede29ba789b798b29"} gateway-1 | {"time_local":"03/Sep/2024:15:39:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/d28db222-f705-487b-b02b-5579ebb535ad/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":"dbfa69e91b172abede29ba789b798b29"} device-1 | {"level":"info","message":"POST /devices/d28db222-f705-487b-b02b-5579ebb535ad/websocket 200 22ms","method":"POST","requestID":"dbfa69e91b172abede29ba789b798b29","responseTime":22,"status":200,"url":"/devices/d28db222-f705-487b-b02b-5579ebb535ad/websocket"} device-1 | {"level":"info","message":"Sending changed-callback for device 'http://localhost/devices/d28db222-f705-487b-b02b-5579ebb535ad' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"device 'http://localhost/devices/d28db222-f705-487b-b02b-5579ebb535ad' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b0d106477d389c5b3c1debb6f4386df5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"b0d106477d389c5b3c1debb6f4386df5","responseTime":2,"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/d28db222-f705-487b-b02b-5579ebb535ad"},"eventType":"device-changed"}},"level":"info","message":"received a callback","requestID":"b0d106477d389c5b3c1debb6f4386df5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1Nn0.dFDrJYfsLdyKQoXwIAoGDO7YPVGKxXtiTj9bUbbXh_s","level":"info","message":"auth send jwt","requestID":"4f8e34ffc16e25102efc4a8ece015854"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4f8e34ffc16e25102efc4a8ece015854","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4f8e34ffc16e25102efc4a8ece015854"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":831,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:16Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":831,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.625679,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d28db222-f705-487b-b02b-5579ebb535ad","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"4f8e34ffc16e25102efc4a8ece015854","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/d28db222-f705-487b-b02b-5579ebb535ad","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377956,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1Nn0.dFDrJYfsLdyKQoXwIAoGDO7YPVGKxXtiTj9bUbbXh_s"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4f8e34ffc16e25102efc4a8ece015854","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd28db222-f705-487b-b02b-5579ebb535ad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd28db222-f705-487b-b02b-5579ebb535ad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:14.128405970Z"}]},"request_id":"8d1873a2-fb8d-4b4d-9bc9-7d2217f124d9","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377956.3386319} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4f8e34ffc16e25102efc4a8ece015854","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4f8e34ffc16e25102efc4a8ece015854"} gateway-1 | {"time_local":"03/Sep/2024:15:39:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d28db222-f705-487b-b02b-5579ebb535ad? 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":"4f8e34ffc16e25102efc4a8ece015854"} device-1 | {"level":"info","message":"GET /devices/d28db222-f705-487b-b02b-5579ebb535ad? 200 15ms","method":"GET","requestID":"4f8e34ffc16e25102efc4a8ece015854","responseTime":15,"status":200,"url":"/devices/d28db222-f705-487b-b02b-5579ebb535ad?"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 21ms","method":"POST","requestID":"b0d106477d389c5b3c1debb6f4386df5","responseTime":21,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:39:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch","requestID":"b0d106477d389c5b3c1debb6f4386df5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1Nn0.dFDrJYfsLdyKQoXwIAoGDO7YPVGKxXtiTj9bUbbXh_s","level":"info","message":"auth send jwt","requestID":"d12d476dd7f02ccb5f2b994150520fd0"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"d12d476dd7f02ccb5f2b994150520fd0","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d12d476dd7f02ccb5f2b994150520fd0"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":832,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:16Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":832,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.837982,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1453295d-c400-49ca-b825-e70ea484c15f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"d12d476dd7f02ccb5f2b994150520fd0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/1453295d-c400-49ca-b825-e70ea484c15f","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377956,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1Nn0.dFDrJYfsLdyKQoXwIAoGDO7YPVGKxXtiTj9bUbbXh_s"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d12d476dd7f02ccb5f2b994150520fd0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1453295d-c400-49ca-b825-e70ea484c15f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1453295d-c400-49ca-b825-e70ea484c15f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:11.905197704Z"}]},"request_id":"040985ab-f054-4a3a-9fce-b4a4a93de092","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377956.3617783} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d12d476dd7f02ccb5f2b994150520fd0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d12d476dd7f02ccb5f2b994150520fd0"} gateway-1 | {"time_local":"03/Sep/2024:15:39:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1453295d-c400-49ca-b825-e70ea484c15f? 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":"d12d476dd7f02ccb5f2b994150520fd0"} device-1 | {"level":"info","message":"GET /devices/1453295d-c400-49ca-b825-e70ea484c15f? 200 14ms","method":"GET","requestID":"d12d476dd7f02ccb5f2b994150520fd0","responseTime":14,"status":200,"url":"/devices/1453295d-c400-49ca-b825-e70ea484c15f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"af285d10-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"af28ab30-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Received request.","req_id":833,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:19Z"} authorization-1 | {"client_addr":"127.0.0.1:35284","level":"info","msg":"Sent response.","req_id":833,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.772207,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d28db222-f705-487b-b02b-5579ebb535ad","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"af285d10-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/d28db222-f705-487b-b02b-5579ebb535ad","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377954,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1NH0.oYUVoHMqHUDPnCoCRmAHdeG-TPiQ-qcdEDYZkFIysZo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"af285d10-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58432","level":"info","msg":"Received request.","req_id":834,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:19Z"} authorization-1 | {"client_addr":"127.0.0.1:58432","level":"info","msg":"Sent response.","req_id":834,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.623212,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1453295d-c400-49ca-b825-e70ea484c15f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"af28ab30-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/1453295d-c400-49ca-b825-e70ea484c15f","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377954,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1NH0.oYUVoHMqHUDPnCoCRmAHdeG-TPiQ-qcdEDYZkFIysZo"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"af28ab30-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd28db222-f705-487b-b02b-5579ebb535ad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd28db222-f705-487b-b02b-5579ebb535ad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:14.128405970Z"}]},"request_id":"2372e1dc-4b91-4295-822e-738debb0d72d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377959.2797296} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"af285d10-6a0a-11ef-9b41-2363e6623fc8","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:50050","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1453295d-c400-49ca-b825-e70ea484c15f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1453295d-c400-49ca-b825-e70ea484c15f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"timestamp":"2024-09-03T15:39:11.905197704Z"}]},"request_id":"c69bbfb4-64ed-44ae-8ec8-1fac282e81a4","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377959.2873528} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"af285d10-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"af28ab30-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/d28db222-f705-487b-b02b-5579ebb535ad? 200 24ms","method":"GET","requestID":"af285d10-6a0a-11ef-9b41-2363e6623fc8","responseTime":24,"status":200,"url":"/devices/d28db222-f705-487b-b02b-5579ebb535ad?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"af28ab30-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /devices/1453295d-c400-49ca-b825-e70ea484c15f? 200 26ms","method":"GET","requestID":"af28ab30-6a0a-11ef-9b41-2363e6623fc8","responseTime":26,"status":200,"url":"/devices/1453295d-c400-49ca-b825-e70ea484c15f?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"af2d1800-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:58432","level":"info","msg":"Received request.","req_id":835,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:19Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd28db222-f705-487b-b02b-5579ebb535ad","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"52730f4d-48f4-4f2c-9ce7-edfaa78a396a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377959.3035111} authorization-1 | {"client_addr":"127.0.0.1:58432","level":"info","msg":"Sent response.","req_id":835,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.264733,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d28db222-f705-487b-b02b-5579ebb535ad","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"af2d1800-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d28db222-f705-487b-b02b-5579ebb535ad","object_type":"device","rebac_allow":false,"scope_allow":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":"af2d1800-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"af2d1800-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/d28db222-f705-487b-b02b-5579ebb535ad/signaling 200 14ms","method":"POST","requestID":"af2d1800-6a0a-11ef-9b41-2363e6623fc8","responseTime":14,"status":200,"url":"/devices/d28db222-f705-487b-b02b-5579ebb535ad/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"af2fb010-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:58432","level":"info","msg":"Received request.","req_id":836,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:19Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1453295d-c400-49ca-b825-e70ea484c15f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9a949267-ed77-433c-9947-04dd67a1fa9a","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377959.3200698} authorization-1 | {"client_addr":"127.0.0.1:58432","level":"info","msg":"Sent response.","req_id":836,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.13452,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1453295d-c400-49ca-b825-e70ea484c15f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"af2fb010-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1453295d-c400-49ca-b825-e70ea484c15f","object_type":"device","rebac_allow":false,"scope_allow":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":"af2fb010-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"af2fb010-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/1453295d-c400-49ca-b825-e70ea484c15f/signaling 200 13ms","method":"POST","requestID":"af2fb010-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/devices/1453295d-c400-49ca-b825-e70ea484c15f/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7147470f-cf52-4d40-bf58-a47f568e6bcc"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"be40bad79e2564b025c25c62b13ebec9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7147470f-cf52-4d40-bf58-a47f568e6bcc"},"level":"info","message":"Building connection plan","requestID":"be40bad79e2564b025c25c62b13ebec9"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"858eb22f-7bc1-4b49-90a6-727d6d1fbc40"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"c446ccc9-8939-45cc-a212-c4253a8737c7"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"6acc13c6-5bd7-4d58-ac30-7949f433802d"}]},"level":"info","message":"Built pairwise service configurations","requestID":"be40bad79e2564b025c25c62b13ebec9"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/d28db222-f705-487b-b02b-5579ebb535ad"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/1453295d-c400-49ca-b825-e70ea484c15f"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"be40bad79e2564b025c25c62b13ebec9"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"af324820-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:58432","level":"info","msg":"Received request.","req_id":837,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:19Z"} authorization-1 | {"client_addr":"127.0.0.1:58432","level":"info","msg":"Sent response.","req_id":837,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.173463,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:19Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"af324820-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377954,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1NH0.oYUVoHMqHUDPnCoCRmAHdeG-TPiQ-qcdEDYZkFIysZo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"af324820-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","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%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]}},"raw_response":{},"request_id":"a23502ea-bd40-489f-9cc5-407454481c01","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377959.3484273} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f48e04d4-14c4-4490-a0ca-466d9865dbd4","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377959.349142} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"af324820-6a0a-11ef-9b41-2363e6623fc8","responseTime":8,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"af324820-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"af324820-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/bbe8da7f-e59f-43b5-8bc9-5fe2aa2379c1'","requestID":"af324820-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/bbe8da7f-e59f-43b5-8bc9-5fe2aa2379c1'","requestID":"af324820-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"af324820-6a0a-11ef-9b41-2363e6623fc8"} 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":"af324820-6a0a-11ef-9b41-2363e6623fc8","responseTime":36,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"af324820-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/bbe8da7f-e59f-43b5-8bc9-5fe2aa2379c1","device":"d28db222-f705-487b-b02b-5579ebb535ad","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/bbe8da7f-e59f-43b5-8bc9-5fe2aa2379c1","device":"1453295d-c400-49ca-b825-e70ea484c15f","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/7147470f-cf52-4d40-bf58-a47f568e6bcc"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"be40bad79e2564b025c25c62b13ebec9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"af3d44a0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:58432","level":"info","msg":"Received request.","req_id":838,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:19Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd28db222-f705-487b-b02b-5579ebb535ad","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"00fe9d44-1f82-4bd8-9488-04dfdec4e948","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377959.4072044} authorization-1 | {"client_addr":"127.0.0.1:58432","level":"info","msg":"Sent response.","req_id":838,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.42776,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d28db222-f705-487b-b02b-5579ebb535ad","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"af3d44a0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d28db222-f705-487b-b02b-5579ebb535ad","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"af3d44a0-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"af3d44a0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/d28db222-f705-487b-b02b-5579ebb535ad/signaling 200 9ms","method":"POST","requestID":"af3d44a0-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/devices/d28db222-f705-487b-b02b-5579ebb535ad/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"af3ecb40-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:58432","level":"info","msg":"Received request.","req_id":839,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:19Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1453295d-c400-49ca-b825-e70ea484c15f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2074f543-76df-4306-a035-2fc2ec24497d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377959.4171884} authorization-1 | {"client_addr":"127.0.0.1:58432","level":"info","msg":"Sent response.","req_id":839,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.81268,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1453295d-c400-49ca-b825-e70ea484c15f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"af3ecb40-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1453295d-c400-49ca-b825-e70ea484c15f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"af3ecb40-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"af3ecb40-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/1453295d-c400-49ca-b825-e70ea484c15f/signaling 200 10ms","method":"POST","requestID":"af3ecb40-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":200,"url":"/devices/1453295d-c400-49ca-b825-e70ea484c15f/signaling"} device-1 | {"device":"d28db222-f705-487b-b02b-5579ebb535ad","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"d28db222-f705-487b-b02b-5579ebb535ad","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"1453295d-c400-49ca-b825-e70ea484c15f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"1453295d-c400-49ca-b825-e70ea484c15f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 4620878747632131709 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:GOmJ\r\na=ice-pwd:WD09F9LsPknkxiqY1NWmX2OM\r\na=ice-options:trickle\r\na=fingerprint:sha-256 35:CC:DB:3A:47:A4:71:23:25:DA:D5:1F:4B:F1:66:8F:EB:C4:19:A9:8F:E7:33:DF:24:AA:78:4D:E9:AE:AC:E4\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"1453295d-c400-49ca-b825-e70ea484c15f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 8697048255225795979 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:m5+j\r\na=ice-pwd:Iv1oSL/PWA99yd9Du6iEsJOF\r\na=ice-options:trickle\r\na=fingerprint:sha-256 DA:87:0F:01:50:7E:71:42:2E:AB:3D:2F:7E:35:94:0B:83:6E:1C:DB:83:AF:F6:DF:AA:C8:4F:CE:AF:AF:E0:DF\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"d28db222-f705-487b-b02b-5579ebb535ad","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3719723192 1 udp 2113937151 c2318eec-96e4-41fe-8ead-16165d7c3e5a.local 58667 typ host generation 0 ufrag m5+j network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"d28db222-f705-487b-b02b-5579ebb535ad","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1503335111 1 udp 1677729535 141.24.211.56 58667 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag m5+j network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"d28db222-f705-487b-b02b-5579ebb535ad","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/d28db222-f705-487b-b02b-5579ebb535ad'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/d28db222-f705-487b-b02b-5579ebb535ad'"} device-1 | {"content":{"candidate":"candidate:134051406 1 udp 2113937151 a0f3ac60-2618-42e7-b368-f6d7da1260fe.local 34332 typ host generation 0 ufrag GOmJ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"1453295d-c400-49ca-b825-e70ea484c15f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:631503043 1 udp 1677729535 141.24.211.56 34332 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag GOmJ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"1453295d-c400-49ca-b825-e70ea484c15f","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/1453295d-c400-49ca-b825-e70ea484c15f'"} device-1 | {"device":"1453295d-c400-49ca-b825-e70ea484c15f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"d28db222-f705-487b-b02b-5579ebb535ad","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/bbe8da7f-e59f-43b5-8bc9-5fe2aa2379c1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"bbe8da7f-e59f-43b5-8bc9-5fe2aa2379c1","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"1453295d-c400-49ca-b825-e70ea484c15f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"d28db222-f705-487b-b02b-5579ebb535ad","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4dadf65080fd7e95908b6f056167e64c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4dadf65080fd7e95908b6f056167e64c","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/d28db222-f705-487b-b02b-5579ebb535ad"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/1453295d-c400-49ca-b825-e70ea484c15f"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/bbe8da7f-e59f-43b5-8bc9-5fe2aa2379c1"}}},"level":"info","message":"received a callback","requestID":"4dadf65080fd7e95908b6f056167e64c"} device-1 | {"device":"1453295d-c400-49ca-b825-e70ea484c15f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"d28db222-f705-487b-b02b-5579ebb535ad","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":"4dadf65080fd7e95908b6f056167e64c","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:39: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":"4dadf65080fd7e95908b6f056167e64c"} device-1 | {"device":"d28db222-f705-487b-b02b-5579ebb535ad","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"bbe8da7f-e59f-43b5-8bc9-5fe2aa2379c1","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"bbe8da7f-e59f-43b5-8bc9-5fe2aa2379c1","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/bbe8da7f-e59f-43b5-8bc9-5fe2aa2379c1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"bbe8da7f-e59f-43b5-8bc9-5fe2aa2379c1","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"214efea1420deca27934cac663552f6d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"214efea1420deca27934cac663552f6d","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/d28db222-f705-487b-b02b-5579ebb535ad"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/1453295d-c400-49ca-b825-e70ea484c15f"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/bbe8da7f-e59f-43b5-8bc9-5fe2aa2379c1"}}},"level":"info","message":"received a callback","requestID":"214efea1420deca27934cac663552f6d"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"af4a6400-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:58432","level":"info","msg":"Received request.","req_id":840,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:19Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fbbe8da7f-e59f-43b5-8bc9-5fe2aa2379c1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8832afe4-59b4-4863-80d4-f5c38945a7e1","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377959.4916625} authorization-1 | {"client_addr":"127.0.0.1:58432","level":"info","msg":"Sent response.","req_id":840,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.0442,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/bbe8da7f-e59f-43b5-8bc9-5fe2aa2379c1","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"af4a6400-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/bbe8da7f-e59f-43b5-8bc9-5fe2aa2379c1","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":"af4a6400-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"af4a6400-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"GET /peerconnections/bbe8da7f-e59f-43b5-8bc9-5fe2aa2379c1 200 6ms","method":"GET","requestID":"af4a6400-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/peerconnections/bbe8da7f-e59f-43b5-8bc9-5fe2aa2379c1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 31ms","method":"POST","requestID":"214efea1420deca27934cac663552f6d","responseTime":31,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:39: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.033","http_referrer":"","http_user_agent":"node-fetch","requestID":"214efea1420deca27934cac663552f6d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"af4e82b0-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:58432","level":"info","msg":"Received request.","req_id":841,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:19Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd28db222-f705-487b-b02b-5579ebb535ad","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"20ed52eb-7908-4ef7-b95c-9f3c8b5562ac","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377959.5190837} authorization-1 | {"client_addr":"127.0.0.1:58432","level":"info","msg":"Sent response.","req_id":841,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.262429,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d28db222-f705-487b-b02b-5579ebb535ad","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"af4e82b0-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d28db222-f705-487b-b02b-5579ebb535ad","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"af4e82b0-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"af4e82b0-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/d28db222-f705-487b-b02b-5579ebb535ad/signaling 200 7ms","method":"POST","requestID":"af4e82b0-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/devices/d28db222-f705-487b-b02b-5579ebb535ad/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"af4fe240-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:58432","level":"info","msg":"Received request.","req_id":842,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:19Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1453295d-c400-49ca-b825-e70ea484c15f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"edd3ecfb-a863-422a-b955-c4940a953184","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377959.5284197} authorization-1 | {"client_addr":"127.0.0.1:58432","level":"info","msg":"Sent response.","req_id":842,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.751825,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1453295d-c400-49ca-b825-e70ea484c15f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"af4fe240-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1453295d-c400-49ca-b825-e70ea484c15f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"af4fe240-6a0a-11ef-9b41-2363e6623fc8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"af4fe240-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/1453295d-c400-49ca-b825-e70ea484c15f/signaling 200 9ms","method":"POST","requestID":"af4fe240-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/devices/1453295d-c400-49ca-b825-e70ea484c15f/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1OX0.rUcblAjzupWx67p0p97afYSw7YV5HPglChmnTRqXauM","level":"info","message":"auth send jwt","requestID":"d5d7037a856bab8d47fa0b43b317a2ee"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d5d7037a856bab8d47fa0b43b317a2ee","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/7147470f-cf52-4d40-bf58-a47f568e6bcc","requestID":"d5d7037a856bab8d47fa0b43b317a2ee"} authorization-1 | {"client_addr":"127.0.0.1:58432","level":"info","msg":"Received request.","req_id":843,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:19Z"} authorization-1 | {"client_addr":"127.0.0.1:58432","level":"info","msg":"Sent response.","req_id":843,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.785348,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/7147470f-cf52-4d40-bf58-a47f568e6bcc","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"d5d7037a856bab8d47fa0b43b317a2ee","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/7147470f-cf52-4d40-bf58-a47f568e6bcc","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377959,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1OX0.rUcblAjzupWx67p0p97afYSw7YV5HPglChmnTRqXauM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d5d7037a856bab8d47fa0b43b317a2ee","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/7147470f-cf52-4d40-bf58-a47f568e6bcc","requestID":"d5d7037a856bab8d47fa0b43b317a2ee"} gateway-1 | {"time_local":"03/Sep/2024:15:39:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/7147470f-cf52-4d40-bf58-a47f568e6bcc 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":"d5d7037a856bab8d47fa0b43b317a2ee"} experiment-1 | {"level":"info","message":"GET /experiments/7147470f-cf52-4d40-bf58-a47f568e6bcc 200 10ms","method":"GET","requestID":"d5d7037a856bab8d47fa0b43b317a2ee","responseTime":10,"status":200,"url":"/experiments/7147470f-cf52-4d40-bf58-a47f568e6bcc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1OX0.rUcblAjzupWx67p0p97afYSw7YV5HPglChmnTRqXauM","level":"info","message":"auth send jwt","requestID":"3bd69a4cea4c5944c7598fee5c0f2de5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3bd69a4cea4c5944c7598fee5c0f2de5","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/7147470f-cf52-4d40-bf58-a47f568e6bcc","requestID":"3bd69a4cea4c5944c7598fee5c0f2de5"} authorization-1 | {"client_addr":"127.0.0.1:58432","level":"info","msg":"Received request.","req_id":844,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:19Z"} authorization-1 | {"client_addr":"127.0.0.1:58432","level":"info","msg":"Sent response.","req_id":844,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.158767,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:19Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/7147470f-cf52-4d40-bf58-a47f568e6bcc","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"3bd69a4cea4c5944c7598fee5c0f2de5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"experiment:http://localhost/experiments/7147470f-cf52-4d40-bf58-a47f568e6bcc","object_type":"experiment","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377959,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1OX0.rUcblAjzupWx67p0p97afYSw7YV5HPglChmnTRqXauM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3bd69a4cea4c5944c7598fee5c0f2de5","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7147470f-cf52-4d40-bf58-a47f568e6bcc"},"level":"info","message":"Attempting to finish experiment","requestID":"3bd69a4cea4c5944c7598fee5c0f2de5"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"af595820-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:58432","level":"info","msg":"Received request.","req_id":845,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:19Z"} authorization-1 | {"client_addr":"127.0.0.1:58432","level":"info","msg":"Sent response.","req_id":845,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.656315,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:19Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/bbe8da7f-e59f-43b5-8bc9-5fe2aa2379c1","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"af595820-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"peerconnection:http://localhost/peerconnections/bbe8da7f-e59f-43b5-8bc9-5fe2aa2379c1","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377959,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1OX0.rUcblAjzupWx67p0p97afYSw7YV5HPglChmnTRqXauM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"af595820-6a0a-11ef-9b41-2363e6623fc8","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/bbe8da7f-e59f-43b5-8bc9-5fe2aa2379c1","device":"1453295d-c400-49ca-b825-e70ea484c15f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/bbe8da7f-e59f-43b5-8bc9-5fe2aa2379c1","device":"d28db222-f705-487b-b02b-5579ebb535ad","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/bbe8da7f-e59f-43b5-8bc9-5fe2aa2379c1' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/bbe8da7f-e59f-43b5-8bc9-5fe2aa2379c1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"bbe8da7f-e59f-43b5-8bc9-5fe2aa2379c1","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fbbe8da7f-e59f-43b5-8bc9-5fe2aa2379c1': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fbbe8da7f-e59f-43b5-8bc9-5fe2aa2379c1","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"951aa5d6-56f6-47f7-8619-0792438bf660","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377959.6046064} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ac42045b-a0e0-47e1-a57f-c34013b7cebd","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377959.6047966} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"15f9c1aeba3ad1a9a8f03b04bef7eefd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"af595820-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"15f9c1aeba3ad1a9a8f03b04bef7eefd","responseTime":0,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e6cb05476a07999ac31e671e7f300fbb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/d28db222-f705-487b-b02b-5579ebb535ad"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/1453295d-c400-49ca-b825-e70ea484c15f"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/bbe8da7f-e59f-43b5-8bc9-5fe2aa2379c1"}}},"level":"info","message":"received a callback","requestID":"15f9c1aeba3ad1a9a8f03b04bef7eefd"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e6cb05476a07999ac31e671e7f300fbb","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/d28db222-f705-487b-b02b-5579ebb535ad"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/1453295d-c400-49ca-b825-e70ea484c15f"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/bbe8da7f-e59f-43b5-8bc9-5fe2aa2379c1"}}},"level":"info","message":"received a callback","requestID":"e6cb05476a07999ac31e671e7f300fbb"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"af595820-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"DELETE /peerconnections/bbe8da7f-e59f-43b5-8bc9-5fe2aa2379c1 204 31ms","method":"DELETE","requestID":"af595820-6a0a-11ef-9b41-2363e6623fc8","responseTime":31,"status":204,"url":"/peerconnections/bbe8da7f-e59f-43b5-8bc9-5fe2aa2379c1"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/d28db222-f705-487b-b02b-5579ebb535ad'"} device-1 | {"level":"info","message":"deleteDevicesByDeviceId called","requestID":"af5e6130-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:58432","level":"info","msg":"Received request.","req_id":846,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:19Z"} authorization-1 | {"client_addr":"127.0.0.1:58432","level":"info","msg":"Sent response.","req_id":846,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.717613,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:19Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"device:http://localhost/devices/d28db222-f705-487b-b02b-5579ebb535ad","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"af5e6130-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa","object":"device:http://localhost/devices/d28db222-f705-487b-b02b-5579ebb535ad","object_type":"device","payload":{"admin":true,"edgeToken":"VF429V-IvnnLczi1v8miAuWvaXQcS57_do60R-mOObzJhEwg-Nbr_wMB6NfDxRvrj_Q6REDr3E3dDnGpZdEEAQ","iat":1725377959,"sub":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa","subject_alt":"http://localhost/users/d14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2QxNDM2NmVhLTdlMWEtNDdkZS04ZGYxLWFjMmVmMDZmYmVhYSIsImVkZ2VUb2tlbiI6IlZGNDI5Vi1Jdm5uTGN6aTF2OG1pQXVXdmFYUWNTNTdfZG82MFItbU9PYnpKaEV3Zy1OYnJfd01CNk5mRHhSdnJqX1E2UkVEcjNFM2REbkdwWmRFRUFRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNTM3Nzk1OX0.rUcblAjzupWx67p0p97afYSw7YV5HPglChmnTRqXauM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"af5e6130-6a0a-11ef-9b41-2363e6623fc8","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'device:http%3A%2F%2Flocalhost%2Fdevices%2Fd28db222-f705-487b-b02b-5579ebb535ad': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd28db222-f705-487b-b02b-5579ebb535ad","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"84536bf2-00e3-427d-b1ec-278f80cd15d0","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377959.6364286} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d1a1aaaf-173e-4e97-9e11-6e9fc7604de4","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377959.6367803} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"af5e6130-6a0a-11ef-9b41-2363e6623fc8","responseTime":9,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"deleteDevicesByDeviceId succeeded","requestID":"af5e6130-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"DELETE /devices/d28db222-f705-487b-b02b-5579ebb535ad 204 32ms","method":"DELETE","requestID":"af5e6130-6a0a-11ef-9b41-2363e6623fc8","responseTime":32,"status":204,"url":"/devices/d28db222-f705-487b-b02b-5579ebb535ad"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7147470f-cf52-4d40-bf58-a47f568e6bcc"},"level":"info","message":"Successfully finished experiment","requestID":"3bd69a4cea4c5944c7598fee5c0f2de5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"af665070-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"client_addr":"127.0.0.1:58432","level":"info","msg":"Received request.","req_id":847,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:19Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd28db222-f705-487b-b02b-5579ebb535ad","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8ee7047d-23a5-4750-bc67-4d5ab20937ad","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377959.6764483} authorization-1 | {"client_addr":"127.0.0.1:58432","level":"info","msg":"Sent response.","req_id":847,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.409995,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d28db222-f705-487b-b02b-5579ebb535ad","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"af665070-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d28db222-f705-487b-b02b-5579ebb535ad","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"af665070-6a0a-11ef-9b41-2363e6623fc8","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"data":{"error":"MissingEntityError","message":"The requested Device Overview does not exist in the database","method":"POST","stack":"MissingEntityError: The requested Device Overview does not exist in the database\n at DeviceOverviewRepository.findOneOrFail (file:///usr/local/lib/node_modules/@crosslab/service-common/lib/esm/database/abstractRepository.js:63:19)\n at async DeviceRepository.findOneOrFail (file:///usr/local/lib/node_modules/@crosslab/service-device/app/database/repositories/device.js:155:32)\n at async Object.postDevicesByDeviceIdSignaling (file:///usr/local/lib/node_modules/@crosslab/service-device/app/operations/devices/device/signaling/post.js:22:25)\n at async file:///usr/local/lib/node_modules/@crosslab/service-device/app/generated/routes.js:276:28","status":404,"url":"/devices/d28db222-f705-487b-b02b-5579ebb535ad/signaling"},"level":"error","message":"An error occurred during the handling of a request","requestID":"af665070-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/d28db222-f705-487b-b02b-5579ebb535ad/signaling 404 10ms","method":"POST","requestID":"af665070-6a0a-11ef-9b41-2363e6623fc8","responseTime":10,"status":404,"url":"/devices/d28db222-f705-487b-b02b-5579ebb535ad/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":"3bd69a4cea4c5944c7598fee5c0f2de5"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7147470f-cf52-4d40-bf58-a47f568e6bcc': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7147470f-cf52-4d40-bf58-a47f568e6bcc","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd14366ea-7e1a-47de-8df1-ac2ef06fbeaa"}]},"store_id":"01J6W8GQDNC951JBECC6A98RDR","writes":null},"raw_response":{},"request_id":"15a007db-aa65-4a76-b8e9-43acd911eed0","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377959.6835084} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"af684c40-6a0a-11ef-9b41-2363e6623fc8"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store_id":"01J6W8GQDNC951JBECC6A98RDR"},"raw_response":{"authorization_model":{"id":"01J6W8GQEKG6N8WBRRJAJ13G8N","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fddd4bff-4aa5-43bd-84a9-ab82ae60b816","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377959.683938} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"3bd69a4cea4c5944c7598fee5c0f2de5","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58432","level":"info","msg":"Received request.","req_id":848,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-03T15:39:19Z"} authorization-1 | {"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:50050","raw_request":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","contextual_tuples":null,"store_id":"01J6W8GQDNC951JBECC6A98RDR","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1453295d-c400-49ca-b825-e70ea484c15f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8bcf2179-4741-4f8d-bf39-3fe330eb8a3d","store_id":"01J6W8GQDNC951JBECC6A98RDR","subsystem":"openfga","timestamp":1725377959.6906588} authorization-1 | {"client_addr":"127.0.0.1:58432","level":"info","msg":"Sent response.","req_id":848,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.90758,"resp_status":200,"subsystem":"opa","time":"2024-09-03T15:39:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1453295d-c400-49ca-b825-e70ea484c15f","openfga":{"authorization_model_id":"01J6W8GQEKG6N8WBRRJAJ13G8N","store":"01J6W8GQDNC951JBECC6A98RDR"},"requestID":"af684c40-6a0a-11ef-9b41-2363e6623fc8","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1453295d-c400-49ca-b825-e70ea484c15f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"af684c40-6a0a-11ef-9b41-2363e6623fc8","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"af684c40-6a0a-11ef-9b41-2363e6623fc8"} device-1 | {"level":"info","message":"POST /devices/1453295d-c400-49ca-b825-e70ea484c15f/signaling 200 13ms","method":"POST","requestID":"af684c40-6a0a-11ef-9b41-2363e6623fc8","responseTime":13,"status":200,"url":"/devices/1453295d-c400-49ca-b825-e70ea484c15f/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/7147470f-cf52-4d40-bf58-a47f568e6bcc","requestID":"3bd69a4cea4c5944c7598fee5c0f2de5"} gateway-1 | {"time_local":"03/Sep/2024:15:39:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/7147470f-cf52-4d40-bf58-a47f568e6bcc 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":"3bd69a4cea4c5944c7598fee5c0f2de5"} experiment-1 | {"level":"info","message":"DELETE /experiments/7147470f-cf52-4d40-bf58-a47f568e6bcc 204 177ms","method":"DELETE","requestID":"3bd69a4cea4c5944c7598fee5c0f2de5","responseTime":177,"status":204,"url":"/experiments/7147470f-cf52-4d40-bf58-a47f568e6bcc"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 149ms","method":"POST","requestID":"15f9c1aeba3ad1a9a8f03b04bef7eefd","responseTime":149,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:39:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.151","http_referrer":"","http_user_agent":"node-fetch","requestID":"15f9c1aeba3ad1a9a8f03b04bef7eefd"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 148ms","method":"POST","requestID":"e6cb05476a07999ac31e671e7f300fbb","responseTime":148,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:39:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.151","http_referrer":"","http_user_agent":"node-fetch","requestID":"e6cb05476a07999ac31e671e7f300fbb"} gateway-1 | {"time_local":"03/Sep/2024:15:39:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2404","request_time":"3.460","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"26060739e4a83f6c92f42e3d59cf851f"} gateway-1 | {"time_local":"03/Sep/2024:15:39:19 +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.800","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"6f92edc71215d0977616d298e3a5794e"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/1453295d-c400-49ca-b825-e70ea484c15f' closed"} device-1 | {"level":"info","message":"Sending changed-callback for device 'http://localhost/devices/d28db222-f705-487b-b02b-5579ebb535ad' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/d28db222-f705-487b-b02b-5579ebb535ad' closed"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"295b63324f87c7720c4a3765cf4079b8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"295b63324f87c7720c4a3765cf4079b8","responseTime":1,"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/d28db222-f705-487b-b02b-5579ebb535ad"},"eventType":"device-changed"}},"level":"info","message":"received a callback","requestID":"295b63324f87c7720c4a3765cf4079b8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 410 2ms","method":"POST","requestID":"295b63324f87c7720c4a3765cf4079b8","responseTime":2,"status":410,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"03/Sep/2024:15:39:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "410","body_bytes_sent":"5","request_time":"0.004","http_referrer":"","http_user_agent":"node-fetch","requestID":"295b63324f87c7720c4a3765cf4079b8"} authorization-1 exited with code 0 federation-1 exited with code 0 device-1 exited with code 0 experiment-1 exited with code 0 authentication-1 exited with code 0 gateway-1 exited with code 0